我有以下JSON响应,我试图用Javascript迭代: -
{
"DocumentResponseResults": [
{
"Name": "Example1",
"Id": "1"
},
{
"Name": "Example2",
"Id": "2"
},
{
"Name": "Example3",
"Id": "3"
}
]
}
我已经过测试,使用在线验证器确保其有效的JSON。
我是通过asp.net中 WebMethod 的回复收到此消息。
在回复中它看起来像这样: -
d:"{"DocumentResponseResults":[{"Name":"Example1","Id":"1"},{"Name":"Example2","Id":"2"},{"Name":"Example3","Id":"3"}]}"
我正在尝试迭代JSON字符串中的项目。
我开始解析它是这样的: -
var jsonData = JSON.parse(response.d);
我试图通过访问Items集合来迭代对象数组,但是javascript通知我items属性是未定义的。
任何人都可以建议我如何迭代该集合,并提取诸如“名称”和& “ID”
答案 0 :(得分:3)
jsonData.DocumentResponseResults.forEach(function(Result) {
console.log(Result.Name)
});
答案 1 :(得分:2)
var items = response.DocumentResponseResults //gets you array
for (var i = 0; i < items .length; i++) {
var name = items[i].Name;
var id = items[i].Id;
console.log("Name:"+name + " Id:"+id+"\n");
}
答案 2 :(得分:1)
$.each( jsonData.DocumentResponseResults , function( k, v )
{
//here you can access v.Name, v.Id etc.
});
答案 3 :(得分:1)
你可以这样访问数组:
DocumentResponseResults[i].Name
DocumentResponseResults[i].Id
其中'i'是一个数字。
如果要浏览数组,可以使用jQuery.each()
http://api.jquery.com/jquery.each/
或只是for()循环。
答案 4 :(得分:0)
jsonData.DocumentResponseResults
是项目属性。