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のドキュメントから。

この関数は、jQuery オブジェクトを排他的に反復処理するために使用される と$.each()同じではありません。$(selector).each()この$.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 に答える