Ich kämpfe darum, dass dieses Skript funktioniert. Es ist im Grunde ein einfacher Ajax-Aufruf, um Daten von einem PHP abzurufen, der einen JSON-Code zurückgibt.
%Vor%}
Der Fehler, den ich in Internet Explorer erhalte, ist:
SCRIPT5007: Wert der Eigenschaft 'Updates' konnte nicht abgerufen werden: Objekt ist null oder nicht definiert
In Firefox und Google Chrome funktioniert alles.
Anfangs wurde mein Code mit .get erstellt, aber jemand schlug vor, zu .ajax - nun, es hat nicht geholfen. Ich habe versucht, mit .done (function (data)) , aber es hat auch nicht funktioniert. Ich habe auch versucht, alle Daten in meiner URL gegenüber der Daten -Eigenschaft zu senden, es funktionierte gut in FF, aber IE poppte immer noch den gleichen Fehler.Schließlich versuchte ich, PHP verschiedene Header hinzuzufügen, wie zum Beispiel header ('Content-Type: application / json'); aber es war nicht "Ich ändere nichts. Ich habe keine Ideen mehr / keine möglichen Lösungen, die ich bei stackoverflow gut gebrauchen könnte, so dass jede Hilfe geschätzt wird.
In IE ging ich zu Developer Tools, Netzwerk-Registerkarte und versuchte zu sehen, ob alles funktioniert - ja, die Anfrage wird korrekt mit allen Daten gesendet, und eine Antwort, die ich erhalte, ist JSON, genau wie es in Firefox ist:
%Vor%was mich wirklich verwirrt, denn ich hätte gedacht, dass ein undefinierter Fehler nur passieren könnte, weil etwas aus irgendeinem Grund nicht in IE zurückgeschickt wird, aber klar: Es ist nicht der Fall. Ich bekomme mein JSON zurück. Nur IE aus irgendeinem unbekannten Grund denkt immer noch, dass Daten nicht definiert sind.
Ok, ich habe endlich eine Lösung gefunden. Grundsätzlich:
}).done(function ( data ) {
anstelle von success: function (data) {
und das ist alles. Plötzlich fing es an zu arbeiten. Es ist sehr komisch. Scheint so, als ob die Schrotflinten-Taktik (zufällige Änderung von Bits des Codes, bis es funktioniert) tatsächlich eine gültige Art ist, Probleme zu lösen. hehehe
Ich habe einen ähnlichen json-Aufruf, der Daten zurückgibt, die wie folgt aussehen:
{"GetTombstoneDataRestResult": {"AlphaSort": "Arai Junichi", "Klassifizierung": "A & amp; D Design-Objekt" ... usw.
Mit anderen Worten, sehr ähnlich wie Ihre JSON-Daten. Um es in jQuery zu referenzieren, verwende ich den Rückrufnamen.
%Vor%Sieht so aus, als wolltest du das auch ausprobieren:
%Vor% Sie haben ein Zeichen namens ​
in Ihrem JSON.
Siehe eine Beschreibung hier:
Was ist der HTML-Zeichencode 8203?
Es ist direkt vor deinem Doppelpunkt hier "time":
Können Sie Ihre Ausgabe säubern und das JSON validieren und es erneut versuchen?
Tags und Links internet-explorer jquery json