0

我正在尝试学习 jQuery(现在是 getJSON)并且很难。我一遍又一遍地搜索,似乎无法弄清楚为什么这不起作用。

JSON:

            {
                    "id" : 1,
                    "type" : "upload",
                    "who" : "chris ",
                    "action" : "uploaded a wallpaper entitled: ",
                    "target" : "Blah blah blah",
                    "time" : "3 hours ago"
            }

这是我的 jQuery 代码

$(document).ready(function(){
    $('button').click(function() {
        $.getJSON("/js/activity.json", function(data) {
            $.each(data, function(key, value) {
                console.log(key + " : " + value);
            });
        });
    });
})   

当然 HTML 只是一个简单的

<button>Test</button>

为什么这不向控制台输出任何内容?如果我在.getJSON它不触发之后立即发出警报,但如果我在它触发之前发出警报

4

2 回答 2

1

您的 activity.json 文件包含注释,删除它们。注释不是 JSON 规范的一部分。

于 2012-05-06T22:46:22.233 回答
0

你可以尝试几件事。在回调函数(getJSON 调用中的那个)中,只需放置一个 console.log("test"); 看看你是否正在回调。您还可以在 Firebug 的 .Net 面板或 Chrome Inspector 的网络面板中观看 JSON 调用,以确保它正在触发并正确返回您的文件。例如,您的服务器可能不知道如何正确返回 JSON 文件。

如果它工作正常(即路径正确,正在读取文件),那么只需尝试记录数据 - console.log(data) 并确保它显示您的 JSON。然后您可以担心循环遍历键,您不需要该步骤即可查看它是否正常工作。

于 2012-05-06T22:16:44.770 回答