AJAX JSON响应未定义'?

时间:2017-04-25 09:32:45

标签: javascript json ajax

我在远程页面上有一个JSON输出,如下所示:

{"success":true,"content":"some texts goes here, blah blah blha"}

我需要从上面的JSON中获取content

所以我这样做了:

    var poutput = $('.legalP');

    $.ajax({
    url: 'http://www.url-to-page.com',
        dataType: 'json',
        timeout: 5000,
        success: function(data){
             $.each(data, function(pi,item){ 
                 var products = ''+item.content+'';
                 alert(products);      
                 console.log(products);
                 poutput.append(products);                
             });
        },
        error: function(){
            //alert('There was an error loading the data.');
        }
});

当我运行上面的代码时,我的alert(products);

未定义

有人可以就此提出建议吗?

1 个答案:

答案 0 :(得分:2)

如果JSON返回完全如上所述,则不需要在AJAX调用的响应中使用$ .each迭代器。

您可以访问"内容"值直接,因为响应是JSON对象。

所以你可以这样做:

success: function(data){
           var products = data.content;
           alert(products);
           ...
        }