使用jQuery循环JSON结果

时间:2010-01-11 11:31:27

标签: jquery json html loops

我有以下JSON响应,但我不确定如何正确循环并使用它。

{
  "ID": 1,
  "Name": "dept1",
  "Categories": [
    {
      "ID": 1,
      "Name": "catg1"
    },
    {
      "ID": 2,
      "Name": "catg2"
    }
  ]
}

以下代码提醒我departmentID为1,然后是名称'dept1',然后是:'[object Object],[object Object]'

$.getJSON("mainPage2.aspx", function(result) {
   $.each(result, function(i, item) {
      alert(this);
   });
});

我想做的就是使用部门信息创建一个div,并在其中创建另一个div,其中包含属于该部门的类别的信息。

2 个答案:

答案 0 :(得分:7)

好吧,它显示它让对象好了,你试过吗

    $.getJSON("mainPage2.aspx", function(result) {
   $.each(result, function(i, item) {
      alert(item.Name);
   });
});

项目是从每个函数传递的对象,它应该选择它并警告'dept1'或任何文本设置

如果你想循环通过类别然后再做一个循环,即

    $.getJSON("mainPage2.aspx", function(result) {
   $.each(result, function(i, item) {
      alert(item.Name);
        $.each(item.Categories, function(i, cat) {
           alert(cat.Name)
        }
   });
});

答案 1 :(得分:4)

for(var key in result) {
    var value = result[key];
    if(typeof value == 'object') {
        if(value instanceof Array) {
            // an array. loop through children
            for(var i = 0; i < value.length; i++) {
                var item = value[i];
            }
        } else {
            // complex object, not array. inner for loop on keys?
        }
    } else {
        // regular string/number etc. just print out value?
    }
}