JQuery:GetJson只给我未定义的数据

时间:2015-05-13 09:32:03

标签: javascript jquery json getjson

我正在尝试使用此脚本解析JSON结果:

$.getJSON( url, function(data){
    var items=[];
    $.each(data,function(i,item){
        items.push("<div class='col-lg-12' >");
        items.push( " By "+ item.user_name +": "+ item.created_at);                
        items.push("</div>");
        items.push("<div class='col-lg-12' >");
        items.push( "<p>" + item.text + "</p>" );                
        items.push("</div>");
    });
    $( "<ul/>", {
        "class": "my-new-list",
        html: items.join( "" )
    }).appendTo( "#commentaires" );
});

要解析的JSON是

[
    [
        {
            "text": "text1",
            "created_at": "12 May, 2015",
            "user_name": "gilbert moignon"
        }
    ],
    [
        {
            "text": "text2",
            "created_at": "12 May, 2015",
            "user_name": "jean bono"
        }
    ],
    [
        {
            "text": "text3",
            "created_at": "12 May, 2015",
            "user_name": "gerard mentor"
        }
    ]
]

不幸的是,出于不明原因,我只看到undefined而不是我的数据。 任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:1)

您必须按以下方式更改代码:

因为您正在解析嵌套数组并且数组中只有一个元素,所以您必须在item[0]内使用each

$.each(data, function (i, item) {
    item = item[0];

演示:https://jsfiddle.net/tusharj/dydect3t/