拉风的咖菲猫
一般情况下是对你的请求加error方法,最好的是全局注入容错方法,下面以JQ举个例子。$(document).ready(function() {
(function($) { //备份jquery的ajax方法
var _ajax = $.ajax; //重写jquery的ajax方法
$.ajax = function(opt) { //备份opt中error和success方法
var fn = { error: function(XMLHttpRequest, textStatus, errorThrown) {},
success: function(data, textStatus) {}, beforeSend: function(XHR) {},
complete: function(XHR, TS) {}
}; if (opt.error) fn.error = opt.error; if (opt.success) fn.success = opt.success;
if (opt.beforeSend) fn.beforeSend = opt.beforeSend; if (opt.complete) fn.complete = opt.complete;
//扩展增强处理
var _opt = $.extend(opt, { error: function(XMLHttpRequest, textStatus, errorThrown) {
//错误方法增强处理
fn.error(XMLHttpRequest, textStatus, errorThrown); // 敲黑板,这里是重点
location.href = 'http://xxxxxx/login.html';
}, success: function(data, textStatus) { //成功回调方法增强处理
fn.success(data, textStatus);
}, beforeSend: function(XHR) { //提交前回调方法
fn.beforeSend(XHR);
}, complete: function(XHR, TS) { //请求完成后回调函数 (请求成功或失败之后均调用)。
fn.complete(XHR, TS);
}
});
_ajax(_opt);
};
})(jQuery);
});