每次运行我的 ajax jquery 函数时,我都会收到一个错误,这适用于我的所有 ajax 调用。 这是我的代码示例
function FindContact(CompanyName,DivisionName,FirstName,LastName) {
$.ajax({
url: 'Path',
dataType: "json",
async:false,
type:'post',
data: {'FirstName':FirstName,'LastName':LastName,'DivisionName':DivisionName,'CompanyName':CompanyName},
success: DisplayContacts,
error: ErrorMsg
});
}
为了解决这个问题,我使用这个
function ErrorMsg(result) {
if (result.status == 200 && result.statusText == 'OK') {
DisplayContacts(result);
}
else {
alert("FAILED : " + result.status + ' ' + result.statusText);
}
}
这很困难,因为我需要为每个 ajax 请求创建这样的方法。
为什么它运行第一个错误代码???
请帮忙!
最佳答案
确保您返回的是有效的 json。如果不是,并且服务器上一切正常,$.ajax 将出错而不是成功。
function FindContact(CompanyName,DivisionName,FirstName,LastName) {
$.ajax({
url: 'Path',
dataType: "html or json",
async:false,
type:'post',
data: {'FirstName':FirstName,'LastName':LastName,'DivisionName':DivisionName,'CompanyName':CompanyName},
success: DisplayContacts,
error: ErrorMsg
});
}
快速检查 json 是否有效的方法是将 dataType 切换为 html 并查看是否已成功触发。如果是,那么您的 json 无效,如果您仍然遇到相同的问题,则说明有其他问题。
检查是否返回有效 json 的另一种方法是,打开 firebug,当请求发送时,单击“响应”选项卡,复制响应并访问 jsonlint.com 检查其是否有效。
关于jquery - ajax jquery 总是运行错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5744760/