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"
}]