用jquery循环json响应

时间:2013-07-24 16:55:27

标签: jquery arrays json

 {
    "Items": [{
        "id": "96",
        "user_id": "1090",
        "points": "120",
        "payment_id": null,
        "reason_id": "1",
        "reference": "",
        "point_date": ""
    }]
}

我的success函数如下所示:

success: function(jsonResponse) {
}

请帮我用jQuery循环这个。感谢。

2 个答案:

答案 0 :(得分:2)

您必须使用$.each等,假设Items []有多个对象。 jQuery中有许多迭代函数,如mapeach。选择最适合您需求的产品。要从Items中选择[] jsonResponse,请使用

var items = jsonResponse.Items;

这是each函数的样子:

//empty array for your ids
var ids = [];
//each function for iteration
$.each(items, function(i, item) {
  ids.push(item.id);
});
//done. now check if its all there 
alert(JSON.stringify(ids));

或者你也可以使用for循环:

//empty array for your ids
var ids = [], i=0;
//for loop for iteration
for( ; i < items.length, i++)
{
  ids.push(items[i].id);
};
//done. now check if its all there 
alert(JSON.stringify(ids));

或者,只需使用map

var ids = $.map(items, function(item, i) {
     //return id from item object
     return item.id;
});

答案 1 :(得分:1)

您可以使用$ .each()函数来遍历JSON:

var jsonData = {"Items": [{"id":"96","user_id":"1090","points":"120","payment_id":null,"reason_id":"1","reference":"","point_date":""}]}

$(jsonData.Items).each(function(){
    alert(this.id);
});

这将警告Items列表中的每个id。在这个用例中只有一个对象。

在此处试试:http://jsfiddle.net/mN449/