jQuery $ .getJSON不返回键和值对

时间:2014-04-07 12:02:04

标签: jquery json getjson

我有一个js文件。在此文件中,我尝试从服务器端getjSON数据。从服务器端返回的json是

{"STATUS":"TRUE","DEVICE_KEY":"80147459","ERROR_MESSAGE":""}

以下脚本不会返回任何警报。我究竟做错了什么? (我查看是否加载了jQuery和jQueryMobile。没有问题)

相同的脚本在我的本地计算机上运行,​​但在距离服务器上不起作用。这可能是apache或php设置问题吗?

感谢

$(window).load(function () {
    $.getJSON("http://.... myfile.php", function (data) {
        $.each(data, function (k, v) {
            alert("key: " + k + "  val:" + v);
        })
    });
});

2 个答案:

答案 0 :(得分:0)

我认为你没有解析它。

JSON只是一个Javascript Object Notation,它是一个字符串。您必须解析它以将其转换为对象。

这样做:

$(window).load(function () {
    $.getJSON("http://.... myfile.php", function (data) {
        data = JSON.parse(data); // add this line
        $.each(data, function (k, v) {
            alert("key: " + k + "  val:" + v);
        })
    });
});

答案 1 :(得分:0)

问题是跨域问题。

我使用了jsonp并且它有效..请参阅http://json-p.org/