1

如何使用 ajax 读取嵌套的 json?

在 sql 请求之后,我有一个由 php 格式化的 json,如下所示:

[
 {
 "owner_info":
     {
     "name":"John",
     "address":"4",
     "date":"10/01/2012"
     }
  },
  {
  "telephone":    
      [
          {
             "id":"1",
             "place":"5",
             "number":"+123456"
          },
          {
             "id":"2",
             "place":"5",
             "number":"+789456"
          },
          {
             "id":"3",
             "place":"8",
             "number":"+0011223"
          },
      ]
   }
]

阿贾克斯做经典

$.getJSON(script, function (result) {
    $(result).each(function(i){     
        // do something with result     
    });
});

我试过了 :

result[i].owner_info.name -> error
result[i].telephone[0].id -> error

我一直在互联网上搜索,但找不到任何解决方案...

谢谢你

4

1 回答 1

2

您使用了错误的each方法。$(selector).each()不一样$.each()

来自 jQuery 文档。

$.each()函数与$(selector).each()用于独占地迭代 jQuery 对象的函数不同。该$.each() 函数可用于迭代任何集合,无论是映射(JavaScript 对象)还是数组。

使用正确each功能的解决方案。

$.getJSON(script, function (result) {
    $.each(result, function(key, value) {
        // either use
        console.log(value.owner_info.name);
        // or
        console.log(result[key].owner_info.name);
    });
});
于 2012-10-02T08:45:14.413 回答