Ajax 加载json数据时出错

Ajax 加载json数据时出错,ajax,json,Ajax,Json,我试图将.json数据加载到我的web应用程序中,但它永远不会成功 它总是返回错误函数 这是我的.js文件: $(document).ready(function () { var output = $('#stage'); $.ajax({ url: 'http://www.haverhill-ps.org/ios/app/data/calendar-json.json', dataType: 'json', timeout: 5000, suc

我试图将
.json
数据加载到我的web应用程序中,但它永远不会成功

它总是返回错误函数

这是我的
.js
文件:

 $(document).ready(function () {
 var output = $('#stage');

 $.ajax({
     url: 'http://www.haverhill-ps.org/ios/app/data/calendar-json.json',
     dataType: 'json',
     timeout: 5000,
     success: function (data) {
         $.each(data, function (i, item) {
             var eventInfo = '<h1>' + item.month + '</h1>' + '<p>' + item.date + '<br>' + item.time + '</p>';

             output.append(eventInfo);
         });
     },
     error: function () {
         output.text('There was an error loading the data.');
     }
 });
});
然后,在我的html中有一个div设置:

<div id="stage">Run here...</div>  
在这里运行。。。

如果您想知道错误是什么,请这样做

error: function (xhr, ajaxOptions, thrownError) {
        alert(xhr.status);
        alert(thrownError);
      }

返回的数据不是有效的json

结果周围缺少
[
]
,并且注释在json中无效。 每个对象最后一个元素末尾的
也无效。您可以在以下位置验证json:

一个有效的json应该是这样的:

[{
    "month": "June",
    "date": "10",
    "time": "5PM"
}, {
    "month": "July",
    "date": "4",
    "time": "1PM"
}]

很好,您负责错误处理。现在您应该会收到错误消息。您是在使用www.haverhill-ps.org还是第三方网站?您很可能遇到跨域问题,如果没有解决方法,您无法从其他域请求数据。非常感谢。我不熟悉使用json,所以我非常感谢。令人惊讶的是,一个简单的问题竟然会引起这样的头痛@乔恩:没问题。验证输出或代码应该始终是第一步。对于js,可以使用jslint或jshint。和json,正如我已经说过的,例如。
[{
    "month": "June",
    "date": "10",
    "time": "5PM"
}, {
    "month": "July",
    "date": "4",
    "time": "1PM"
}]