Ich arbeite Code, aber es ist etwas scheitern: meine JSON-Antwort ist eine gültige JSON, wie ich es auf JSOnLint.com überprüft.JSON Parsing Problem mit Code
So, hier ist das Stück Code, die Mühe machen wird
$.post("items.cfm",{"term":request.term})
.done(function(data){
alert(data);
try{
var obj = $.parseJSON(data),
values = [];
alert(obj[x].id.split('~')[3]);
for(var x = 0; x < obj.length; x++){
values.push({
"label":obj[x].text, "value":obj[x].id,
"price":obj[x].id.split('~')[3]
});
}
response(values);
} catch(e) {
alert(e);
}
})
Wenn ich meine JSON mit folgendem beginnen:
{
"text": "Blue CPR Pocket Mask",
"id": "128177000003239005~Blue~YES~10.75"
}, {
"text": "CPR Face Shields",
"id": "128177000000138987~CPs~YES~41.83"
}
... es wirft einen Fehler:
SyntaxError: Unexpected token , in JSON at position
... aber wenn ich beginne mit:
[{
"text": "Blue CPR Pocket Mask",
"id": "128177000003239005~Blue~YES~10.75"
}, {
"text": "CPR Face Shields",
"id": "128177000000138987~CPs~YES~41.83"
}
]
ein gültiges JSON, aber es schlägt mit meinem Code fehl, da ich versuche, es zu analysieren und seinen Wert zu verwenden, aber es sagt mir, dass id nicht definiert ist. Also, was soll ich tun, damit es funktioniert?
Update # 1
I-Methode des gefolgt jedem und ausprobiert und es fing an, mir jetzt den folgenden Fehler
TypeError: Cannot use 'in' operator to search for '4592' in
Sie haben zwei JSON-Objekte, nicht eins. Behandle sie also als zwei verschiedene oder kombiniere sie als ein Array oder innere Objekte eines anderen Objekts. Außerdem, warum möchten Sie analysieren? Es ist schon JSON, oder? – RaR
Was gibt 'console.log (obj)' in Ihrem Versuch zurück? –