0

正当な JSON オブジェクトと検証済みの JSON オブジェクトの両方の解析に問題があります。

これは問題なく動きます

var response = {"tags":"[{\"value\": 2,\"label\": \"Dubstep\"},{\"value\": 3,\"label\": \"BoysIIMen\"},{\"value\": 4,\"label\":\"Sylenth1\"}]"};

var tags = $.parseJSON(response.tags);
console.log(tags);

コンソールに出力されますArray[3]

しかし、実行すると、の値var responseをこれに変更します

 var response = {"tag":"[{\"id\":2,\"name\":\"Dubstep\",\"description\":\"Dub wob wob\"},{\"id\":3,\"name\":\"BoysIIMen\",\"description\":\"A 1990s Boy Band\"},{\"id\":4,\"name\":\"Sylenth1\",\"description\":\"A VST Plugin for FLStudio \"}]"};

の値はtagsnull両方の値が JSONLint で検証されることに注意してください。

4

2 に答える 2

1

2 番目のシナリオでは、「tags」を「tag」に変更したため、以下のように JSON を解析していますか? reponse.tag に「s」がないことに注意してください。

var tags = $.parseJSON(response.tag);
于 2013-01-30T11:28:23.113 に答える
0

2 番目の例は次のように始まります。

{"tag":

これは

{"tags":
于 2013-01-30T11:27:29.687 に答える