456 Stimmen

Parsing JSON gibt den Fehler "unerwartetes Token o" aus.

Ich habe Probleme beim Parsen einfacher JSON-Strings. Ich habe sie auf JSONLint überprüft und es zeigt an, dass sie gültig sind. Aber wenn ich versuche, sie mit JSON.parse oder der jQuery-Alternative zu parsen, bekomme ich den Fehler unerwartetes Token o:

      var cur_ques_details ={"ques_id":15,"ques_title":"jlkjlkjlkjljl"};
      var ques_list = JSON.parse(cur_ques_details);

      document.write(ques_list['ques_title']);

Hinweis: Ich verschlüssele meine Zeichenfolgen mit json_encode() in PHP.

810voto

Dark Falcon Punkte 42375

Ihre Daten sind bereits ein Objekt. Es ist nicht nötig, sie zu parsen. Der JavaScript-Interpreter hat sie bereits für Sie analysiert.

var cur_ques_details ={"ques_id":15,"ques_title":"jlkjlkjlkjljl"};
document.write(cur_ques_details['ques_title']);

72voto

Versuchen Sie es so zu parsen:

var yourval = jQuery.parseJSON(JSON.stringify(data));

14voto

Iyes boy Punkte 287

Verwenden von JSON.stringify(data);:

$.ajax({
    url: ...
    success:function(data){
        JSON.stringify(data); //in String umwandeln
        alert(data.you_value); //um den Wert anzuzeigen
    }
});

11voto

PlantationGator Punkte 815

Die Quelle Ihres Fehlers liegt jedoch darin, dass Sie den vollständigen JSON-String in Anführungszeichen platzieren müssen. Das Folgende wird Ihr Beispiel korrigieren:

            var cur_ques_details ='{"ques_id":"15","ques_title":"jlkjlkjlkjljl"}';
            var ques_list = JSON.parse(cur_ques_details);
            document.write(ques_list['ques_title']);

Wie bereits von den anderen Befragten erwähnt, ist das Objekt bereits in ein JS-Objekt geparst, daher müssen Sie es nicht parsen. Um zu demonstrieren, wie Sie dasselbe ohne Parsen erreichen können, können Sie Folgendes tun:

            var cur_ques_details ={"ques_id":"15","ques_title":"jlkjlkjlkjljl"};
            document.write(cur_ques_details.ques_title);

10voto

Shuping Punkte 5238

cur_ques_details ist bereits ein JS-Objekt, du musst es nicht parsen

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X