1

我正在像这样进行 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);
    }
});
}

这适用于我正在开发的日历应用程序的初始化。我创建一个对象“信息”并为其分配月份/日期等......然后当用户按下“上一个”或“下一个”时,它重新分配“信息”对象的某些变量并getEvents再次调用。我尝试重写我的查询,重写我的 AJAX 调用,添加 contentType ......似乎没有任何效果。

4

1 回答 1

1

查看控制台中是否有任何错误。还要确保您get_all_events.php返回valid JSON字符串。当你指定dataType:'json'jQuery 会自动解析返回的数据。如果返回的数据不是,valid JSON则抛出此错误。

如何检查?

做一件事。从您的调用 中删除dataType:'json',属性...在您的处理程序中...从控制台复制响应文本并将其粘贴到一些在线 JSON 验证器 (jsonlint.com) 中,如果存在错误,则在服务器端更新到$.ajax()console.log(result)successget_all_events.phpechovalid JSON

于 2013-02-10T15:59:58.030 回答