我正在做一个像这样的AJAX调用:
function getEvents(info){
$.ajax({
url: 'get_all_events.php',
data: {year: info['year'],month: info['month']},
type: 'POST',
dataType: 'json',
success: function (result) {
alert(JSON.stringify(result));
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log(XMLHttpRequest.statusText);
console.log(textStatus);
console.log(errorThrown);
}
});
}
这适用于我正在开发的日历应用程序的初始化。我创建一个对象'info'并为其指定月/日等...然后当用户按下'Previous'或'Next'时,它会重新分配'info'对象的某些变量并再次调用getEvents
。我尝试重写我的查询,重写我的AJAX调用,添加contentType ......似乎没什么用。
答案 0 :(得分:1)
查看控制台中是否有任何错误。另外请确保您的get_all_events.php
返回valid JSON
字符串。当您指定dataType:'json'
时,jQuery将自动解析返回的数据。如果返回的数据不是valid JSON
,则抛出此错误。
如何检查?
做一件事。从dataType:'json',
来电中删除$.ajax()
属性...
console.log(result)
处理程序中的success
...
从控制台复制响应文本并将其粘贴到一些在线JSON验证器(jsonlint.com)中,如果有错误,请将服务器端的get_all_events.php
更新为echo
valid JSON