0

任何人都可以建议一种在javascript中使用jquery迭代格式json数组的方法。

{"0",{"id":"10", "class": "child-of-9"},"1",{"id":"11", "class": "child-of-10"}}

我需要获得每个班级的价值。

4

2 回答 2

0

你的json不正确。它应该看起来更像

{"0": {"id":"10", "class": "child-of-9"},"1": {"id":"11", "class": "child-of-10"}};

完成后,您可以使用jQuery.each()对其进行迭代。

    var data = {"0": {"id":"10", "class": "child-of-9"},"1": {"id":"11", "class": "child-of-10"}};
    jQuery.each( data, function(i,a){
        console.log(a['class']);
    });

顺便说一下,你的 json 不是一个数组,它是一个对象。要构建数组版本,它看起来像

[{"id":"10", "class": "child-of-9"},{"id":"11", "class": "child-of-10"}]
于 2012-09-18T01:18:49.307 回答
0

没有关键是数字的对象。这就是数组如何使用它的索引的有效方式。你所拥有的是一个对象,而不是一个数组

转这个:

a = {"0",{"id":"10", "class": "child-of-9"},"1",{"id":"11", "class": "child-of-10"}}

进入这个:

a = [{"id":"10", "class": "child-of-9"},{"id":"11", "class": "child-of-10"}]

And you have an array of objects. This can be iterated with a simple for loop, and accessed by index.

for(var i=0; i<a.length; i++) {
  console.log(a[i]);
}
于 2012-09-18T01:36:34.320 回答