Ich spiele gerade mit jQuery herum und versuche etwas, das einfach sein sollte, aber es funktioniert einfach nicht.
%Vor%Das Snippet befindet sich in einer test.js-Datei und ist in einer test.html-Datei enthalten, die in Firefox (3.6) wie file: /// C: /test.html geöffnet wird und obwohl "Erfolg" angezeigt wird, sind die Daten leer und durch Firebug die Antwort für XML-Anzeigen:
%Vor%Alternativ habe ich versucht,
hinzuzufügen %Vor%hat keine Wirkung, das Ergebnis wird immer noch als xml verarbeitet (wahrscheinlich, weil die Antwort den Inhaltstyp hat: text / xml; charset = UTF-8).
Ich kann die Reaktionsergebnisse über Firebug sehen, wenn ich
einstelle %Vor%aber da es nicht wirklich ein gültiges js-Skript ist, schlägt es einfach fehl, Firebug zeigt an:
%Vor%Es wird "besser", wenn die obige Anfrage im Browser und durch "View Source" die XML-Datei kopiert, die hier validiert werden soll Ссылка zeigt "no errors found" an, warum funktioniert das nicht über xmlhttprequest?
Was mache ich falsch?
Wäre es möglich, die Antwort von xmlhttprequest irgendwie als text / plain zu erzwingen?
br, iges
P.S. Ich habe die vorgeschlagene dataType: "html" -Option müde (vergessen zu erwähnen, zunächst), aber die "html" funktioniert auch nicht und in Firebug kann ich den gleichen Fehler über das Parsen / moz-nullprincipal sehen.
Auch der Dienst, der die XML-Daten zur Verfügung stellt, wird von einer dritten Partei kontrolliert, auf die ich keinen Zugriff habe, entweder gibt es eine Möglichkeit, dies zu tun, oder ich muss meine Idee auf Wiedersehen küssen: (
Führen Sie diesen Code aus derselben Domäne aus? ( Ссылка )
Weil Sie nicht die Ajax-Aufrufe verwenden dürfen, um Daten von anderen Domains zu holen ... (es sei denn, Sie verwenden die JSONP- oder Script-Datentypen.)
Wenn Daten von fernen Servern abgerufen werden (was nur mit den Datentypen script oder jsonp möglich ist), ...
Eine Alternative wäre, dass jQuery eine lokale Datei anfordert, die die Daten serverseitig empfängt und sie an die Ajax-Anforderung weiterleitet.
zum Beispiel
php: Ссылка
asp: Microsoft.XMLHTTP
Was ist mit HTML?
%Vor%"html": Behandle die Antwort als HTML (Klartext); enthaltene Script-Tags sind ausgewertet.
Es heißt gleiche Herkunftsrichtlinien . Sie dürfen die Ajax-Aufrufe nicht verwenden, um Daten von anderen Domänen abzurufen, es sei denn, Sie verwenden die Datentypen jsonp
oder script
.
Tags und Links jquery