2

次の JSON データ文字列を jquery にループするにはどうすればよいですか? 関数 $.getJSON を使用する必要がありますか?

jQuery17209521235961001366_1380903443191({"type":"result","rid":"hopkinsa","data":
[[{"artist":"NAME1","title":"SONG1","album":null,"royaltytrackid":null,"url":null,"image":"test1.jpg","time":1380910069,"localtime":"11:07 AM"},
{"artist":"NAME2","title":"SONG2","album":null,"royaltytrackid":null,"url":null,"image":"test2.jpg","time":1380909866,"localtime":"11:04 AM"},  
{"artist":"NAME2","title":"SONG3","album":null,"royaltytrackid":null,"url":null,"image":"test3.jpg","time":1380909864,"localtime":"11:04 AM"}],false,0,10,0]})

私はこのコードで試しています:

$(document).ready(function() {
    $.getJSON("json.php", function(data){
        $.each(data.data[0], function(i, item){
            $("#data").append(item.artist); // Name1, Name2
        });      
    })
});
4

1 に答える 1

1

これは JSON ではなく、jQuery によって既にデコードされているため、リテラル JS オブジェクトです。ブラケット[]、ドット表記.、およびループを使用するだけです。

コールバックで、パラメーター名がデータの場合、次のことができます

$.getJSON("url.json", function(data){
    console.log(data.type, data.data[0][0].artist) //"result", "Name1"
    $.each(data.data[0], function(i, item){
        console.log(item.artist); // Name1, Name2
    });        
})
于 2013-10-04T18:22:59.930 に答える