我有以下代码用于默认的jQuery AJAX错误处理:
$.ajaxSetup({
error : function(jqXHR, textStatus, errorThrown) {
alert("Error: " + textStatus + ": " + errorThrown);
},
statusCode : {
404: function() {
alert("Element not found.");
}
}
});
然而,当404发生时,BOTH函数被上调:首先是错误,然后是 statusCode ,所以我看到连续2次警报。
如果 statusCode 未被提升,如何防止此行为并获取错误回调?
答案 0 :(得分:23)
如何在错误处理程序中检查状态代码404?
$.ajaxSetup({
error : function(jqXHR, textStatus, errorThrown) {
if (jqXHR.status == 404) {
alert("Element not found.");
} else {
alert("Error: " + textStatus + ": " + errorThrown);
}
}
});
答案 1 :(得分:11)
试试这个:
$.ajaxSetup({
error : function(jqXHR, textStatus, errorThrown) {
if(jqXHR.status === 404) {
alert("Element not found.");
} else {
alert("Error: " + textStatus + ": " + errorThrown);
}
}
});