Ajax und JSON Repsonse verarbeiten

Bicko

Erfahrenes Mitglied
Hi,

Ich versuche gerade ein abhaengiges Dropdown fuer mein Formular zu erstellen. Dafuer moechte ich jQuery und AJAX einsetzen.

Ich bekomme nun per JSON folgende Antwort zurueck:

{"citydropdown":{"3":"City3","4":"City4"}}

Nun versuche ich mit einer Schleife das zu Verarbeiten:

Code:
success: function(response) {
    var responseData = jQuery.parseJSON(response);

    $.each(responseData, function(i, val) {
          // Hier soll das dropdown gebaut werden
    });

Ich muss ehrlich gesten, das ich das Gefuehl habe das mein JSON Format bereits verkehrt ist. Sollten dort nicht eckige Klammern vorkommen? Und wie loope ich dann ueberhaupt ueber responseData?

Die Sachen im Internet haben mich nuch mehr verwirrt. Seht Ihr bereits den Fehler? Freue mich ueber jeden Tipp. Vielen Dank !
 
Das JSON ist auf jedenfall korrekt (siehe: http://json.org/object.gif)

Der Fehler liegt einfach darin, dass du das Format noch nicht ganz verstanden hast.
So funktioniert es:
Javascript:
var responseData = jQuery.parseJSON('{"citydropdown":{"3":"City3","4":"City4"}}');
responseData = responseData.citydropdown;

$.each(responseData, function(key, value) {
	alert(key + '=' + value);
});

Oder auch mit nativer JavaScript Funktionalität
Javascript:
var responseData = jQuery.parseJSON('{"citydropdown":{"3":"City3","4":"City4"}}');
responseData = responseData.citydropdown;

for(var key in responseData) {
	alert(key + '=' + responseData[key]);
}
 
Hallo CPoly,

Wie genial, es funktioniert. Vielen, vielen Dank. Es ist schon sehr frustrierend, wenn man an einer Sache so festhaengt. Jetzt kann ich das Ganze weiter ausbauen. Nochmal vielen Dank.

Gruss Bicko
 
Zurück