2012-07-24 54 views
1

我通过JSON加载页面上的大量项目,但它不工作。这是我第一次使用JSON,我认为JSON只是一个大对象,所以我将我之前在变量中的对象复制到一个文件中,并将其命名为fun.js.我的“JSON”不起作用

你可以看看这里的JSON:

http://justpaste.it/15zc

我使用jQuery来获取JSON:

$.getJSON('fun.js', function(data){ 
alert(data) 
}); 

什么都没有警觉,其实这件事..警报根本没有发生。有人知道为什么

+0

你会得到任何错误? – MrOBrian 2012-07-24 22:20:49

+0

不,我检查了网络,我收到了一个确定。我甚至在JSON中检查错误,并且我修复了所有错误。 – Shawn31313 2012-07-24 22:21:25

+0

你是否熟悉FireBug?如果使用'console.log(data)'代替'alert()',控制台日志中是否显示任何数据? – 2012-07-24 22:22:13

回答

6

对于初学者,您的JSON不验证。去这里粘贴并修复你的错误:http://jsonformatter.curiousconcept.com/

其次,用户jQuery.Ajax你可以传递onError参数,所以你会得到一个警告,JSON没有通过。

+0

我们也可以只使用Chrome的开发人员工具来观察网络请求,而不是专门用于调试的自己的错误回调。 – Matchu 2012-07-24 22:25:00

+4

你也可以在这里验证你的json:http://jsonlint.com/ – BumbleB2na 2012-07-24 22:25:07

+0

哦,我不知道你需要在每件事上使用双引号。 – Shawn31313 2012-07-24 22:27:42

0

您是否验证了JSON是问题?打开Firebug或Chrome开发工具并刷新页面。您可能会看到一条消息,指出该文件未找到,或者存在解析异常或安全错误。

  • 如果找不到文件,可以在代码中修复该文件。
  • 如果存在解析错误,请使用JSON验证程序。
  • 如果存在安全问题,请参阅我对Get a JSON file from URL and display的回答。您需要更新服务器策略或配置浏览器以允许在测试中访问文件URL。