私はこの問題に取り組んでおり、ウェブとスタックオーバーフローで解決策を探しましたが、エラーを正確に取得できません。
これは、ajax呼び出しを介してサーバーから送信されるjson文字列です。
{root:{name: "root",description: "root description",checked: false,1:{name: "item1",description: "item1 description",checked: true,1.1:{name: "item1.1",description: "item1.1 description",checked: true}}, 2:{name: "item2",description: "item2 description",checked: true}}}
以下のコードを使用して、私は後に文字列を取得していますxmlhttp.readyState == 4 && xmlhttp.status == 200
var aData;
try{
aData =JSON.parse(xmlhttp.responseText);
}
catch(err){
alert(err);
}
次のようなエラーが表示されます
Json.parse expected property name or '}'
ただし、eval()関数を使用すると、正常に機能します
var aData;
try{
aData =eval('(' + xmlhttp.responseText + ')');
}
catch(err){
alert(err);
}
ここでエラーが何であるかをexaplinしてください。
ありがとう。
編集:
jsonビューアで文字列を確認しましたが、正常に機能しました。http://jsonviewer.stack.hu/">