有人请告诉我我的$ .parseJSON有什么问题[javascript / jquery]

时间:2014-03-04 10:20:08

标签: javascript jquery json

这是我的测试结果。我运行我的应用程序,收到"Hello"警报。但我没有得到"After parse JSON"警报。

当我注释掉var rstList = $.parseJSON(data);行时,“解析JSON后”警告提示正确。

我查了很多文档和参考资料,但无法找出我的$.parseJSON()有什么问题。请指教,谢谢。

//Show restaurant listing
$('#restaurantList').on("pagebeforecreate", function() {
    $.getJSON("http://mydomain/api/restaurant", function( data ) {
    alert('Hello');
    var rstList = $.parseJSON(data);
    alert('After parse JSON');

    });
});

2 个答案:

答案 0 :(得分:5)

与名称所暗示的相反,$.getJSON不会给你一些JSON,而是解析的结果。

来自the documentation

  

成功回调传递返回的数据,通常是a   由JSON结构定义并解析的JavaScript对象或数组   使用$ .parseJSON()方法。

您已data已解析,请勿对其进行解析。

BTW,正如Niet评论的那样,您应该查看控制台,以获取有关暂停脚本执行的错误的更多信息。请参阅Using the console

答案 1 :(得分:1)

因为您正在尝试再次解析json对象。这导致错误。 $ .getJSON 将返回json对象。你不需要再解析它