ERLEDIGT
JA
JA
ANTWORTEN
2
2
ZUGRIFFE
179
179
EMPFEHLEN
-
Hallo Leute,
ich nutzte auf meiner Seite ein Ajax-Script um Daten aus einer SQL-Abfrage die in einer PHP Datei steht auszulesen. Das ganze funktioniert auch ganz gut, aber als erste Ausgabe zeigt er mir immer "undefined". Wo liegt der Fehler?
Ausserdem würde ich gerne wissen was die 4 und die 200 in der IF-Abfrage bedeuten.
Das Script stammt nicht von mir und ich habe auch keine Ahnung von Ajax. Hoffe ihr könnt mir weiterhelfen.
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
<script type="text/javascript"> var req = new XMLHttpRequest(); req.onreadystatechange = function() { if (req.readyState==4 && req.status==200) { var data = JSON.parse(req.responseText); var str; for (var index in data) { var obj = data[index]; str += '<table><tr><td><img src="'+obj.imagepfad+'"></td><td>'+obj.name+'</td></tr></table>'; document.getElementById('ausgabe').innerHTML = str; } } } req.open("GET", "Ausgabe.php"); req.send(); </script> <div id=ausgabe></div>Geändert von Spelvin (21.09.11 um 22:05 Uhr)
-
Für die 4 siehe: http://www.w3.org/TR/XMLHttpRequest/...est-readystate
DONE (numeric value 4)
The data transfer has been completed or something went wrong during the transfer (e.g. infinite redirects).
Für die 200 siehe: http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
Jetzt zum letzten Punkt: Als aller erstes steht "undefined", weil die Variable "str" zu Beginn keinen Wert hat, also "undefined" ist. Ändere einfach folgende Zeile10.2.1 200 OK
The request has succeeded. The information returned with the response is dependent on the method used in the request, for example:
GET an entity corresponding to the requested resource is sent in the response;
HEAD the entity-header fields corresponding to the requested resource are sent in the response without any message-body;
POST an entity describing or containing the result of the action;
TRACE an entity containing the request message as received by the end server.
Code javascript:1 2 3 4 5
//Vorher var str; //Nachher var str = '';
Edit: Nimm die Zuweisung zu "innerHTML" hinter die Schleife. Das ist performanter.Geändert von CPoly (21.09.11 um 21:39 Uhr)
-
Danke für deine schnelle Hilfe, hast mir sehr weitergeholfen.
Ähnliche Themen
-
Ajax -> $(ajax) Response Text Leer oder undefined
Von DiDiJo im Forum Javascript & AjaxAntworten: 4Letzter Beitrag: 19.11.10, 11:53 -
[Ajax] POST-Variable enthält undefined, Script-Teil enthält richtigen Wert
Von WorldRacer im Forum Javascript & AjaxAntworten: 9Letzter Beitrag: 08.09.10, 19:54 -
Ajax.Updater, ausgabe in JS Variable statt in einem Element
Von trage im Forum Javascript & AjaxAntworten: 4Letzter Beitrag: 31.01.09, 02:12 -
einfaches Script? Ajax
Von _player im Forum Javascript & AjaxAntworten: 6Letzter Beitrag: 24.10.08, 10:28 -
Ajax Script gesucht
Von Moby Dick im Forum Javascript & AjaxAntworten: 3Letzter Beitrag: 07.06.07, 13:43





Zitieren

Login





