您的位置:首页 > Web前端 > JQuery

jquery重写异步提交

2015-11-27 14:49 731 查看
应用场景,当异步请求发生时,后台处理发生异常需要跳转到某个页面时

(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) {
}
}
if (opt.error) {
fn.error = opt.error;
}
if (opt.success) {
fn.success = opt.success;
}

//扩展增强处理
var _opt = $.extend(opt, {
error: function (XMLHttpRequest, textStatus, errorThrown) {
//错误方法增强处理
var data = jQuery.parseJSON(XMLHttpRequest.responseText);
if (data && data.errorsession) {
window.location.href = "要跳转的url";
return;
}
fn.error(XMLHttpRequest, textStatus, errorThrown);
},
success: function (data, textStatus) {
//成功回调方法增强处理
if (data && data.errorsession) {
window.location.href = "要跳转的url";                    return;
}
fn.success(data, textStatus);
}
});
_ajax(_opt);
};
})(jQuery);

该方法可用于当登录超时时发生异步请求后台session验证失败要求从新登录场景
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: