访问jQuery中从AJAX对象返回的JSON

时间:2014-09-24 20:22:52

标签: javascript php jquery ajax json

我是jQuery的新手。我试图通过AJAX从MySQL获取一些数据。我的PHP返回JSON。这是回应(不要记住变量名称。它在捷克语中:):)

  [{"nadpis":"Testovac\u00ed nadpis","text":"Testovac\u00ed \u010dl\u00e1nek o tom jak se zase prohr\u00e1lo","sestava":"Nikdo nehr\u00e1l"},{"nadpis":"Druhej nadpis","text":"Druhej text","sestava":"druh\u00e1 sestava"}]

这是我的jQuery函数:

 $.ajax({ type: 'GET',   
                 url: 'db.php',   
                 datatype:'json',
                 success : function(data)
                 {  console.log(data[1].text);
                    console.log(data);
                 }
        });

问题在于,当我想访问数据[1] .text时,它只返回 undefined 。我在StackOverflow和其他论坛上经历了很多答案,但我仍然无法使其发挥作用。

1 个答案:

答案 0 :(得分:2)

datatype更改为dataType。否则jQuery不会识别该选项,也不会为您解析响应。

在您的情况下,data仍然是一个字符串,您可以使用console.log(typeof data)进行验证。 data[1]返回"{""{".textundefined

查看有关正确选项名称的文档:http://api.jquery.com/jquery.ajax/


或者,你可以parse the response yourself

(我发布了一个答案,以防止其他误导性答案。它的社区维基因为我投票结束了这个问题。)