阻止AJAX错误传播到ajaxError

时间:2015-04-04 18:17:28

标签: jquery ajax

我有以下全局AJAX错误处理程序...

$(document).ajaxError(function (event, request, settings) {
   ...
});

如果其他地方的其他代码已经处理了错误,我该如何阻止此处理程序也收到错误?

1 个答案:

答案 0 :(得分:1)

您可以在具有错误处理代码的ajax中使用global: false

$.ajax({
    ...
    global: false,
    error: function(){},  // Suppresses error message.
    ...
});

本地调用之前传播到全局级别处理程序。所以你可以做那样的事情

var handled=false;

$(document).ajaxError(function (event, request, settings) {
    if(!handled){
        ...
    }
    handled=false;
});

本地错误处理程序

...
error: function(){if(specificError){handled=true;}},  // Suppresses     error message.
...