2013-02-08 93 views
0

如何从javascript中访问此数组中的crop数组?我可能有许多IDSJavascript解析jsonarray jsonarray

[{"id":"1","crop":"[{\"class\":\"org.project.Crop\",\"id\":6,\"commonName\":\"Wheat\",\"description\":\"N/A\",\"diseases\":[],\"growing\":\"N/A\",\"harvest\":\"N/A\"}, {\"class\":\"org.project.Crop\",\"id\":5,\"commonName\":\"Sugarcane\",\"description\":\"N/A\",\"diseases\":[],\"growing\":\"N/A\",\"harvest\":\"N/A\"}]] 
+0

也许你需要... arrayName [0] .crop – TomTom 2013-02-08 11:47:57

+0

[我有一个嵌套的数据结构/ JSON,我如何访问特定的值?](http://stackoverflow.com/questions/11922383/i-have-a-nested-data-structure-json-how-can-i-access-a-specific -value) – 2013-02-08 11:49:18

+0

如果您将整个响应视为JSON,那么您在JSON内有一个包含JSON的字符串,这非常奇怪。如果你自己创建它,你应该修复生成过程。 – 2013-02-08 11:50:50

回答

0

你的语法是错误的,你缺少"}

这里纠正代码:

var data = [{"id":"1","crop":"[{\"class\":\"org.project.Crop\",\"id\":6,\"commonName\":\"Wheat\",\"description\":\"N/A\",\"diseases\":[],\"growing\":\"N/A\",\"harvest\":\"N/A\"}, {\"class\":\"org.project.Crop\",\"id\":5,\"commonName\":\"Sugarcane\",\"description\":\"N/A\",\"diseases\":[],\"growing\":\"N/A\",\"harvest\":\"N/A\"}]"}]; 
var crop = JSON.parse(data[0].crop); 
alert(crop); 

在线版本:http://jsfiddle.net/w38Ku/1/

你必须解析“裁剪”之前,你可以使用它作为一个对象,因为你已经存储为一个字符串,而不是json对象

0

也许使用JSON.parse(a["crop"]);

也看看this thread

0

你可以这样做:

var x = [{"id":"1","crop":"[{\"class\":\"org.project.Crop\",\"id\":6,\"commonName\":\"Wheat\",\"description\":\"N/A\",\"diseases\":[],\"growing\":\"N/A\",\"harvest\":\"N/A\"}, {\"class\":\"org.project.Crop\",\"id\":5,\"commonName\":\"Sugarcane\",\"description\":\"N/A\",\"diseases\":[],\"growing\":\"N/A\",\"harvest\":\"N/A\"}]]; 

var crop = JSON.parse(x[0].crop);