前言
对于页面异步请求加载数据通常直接在Success:Function中定义即可完成数据的解析和处理;但对于个别案例,比如用户登录Session失效问题,理想应该是用户Session失效,异步请求返回Session失效的结果,返回到登录页面,当然项目简单只有一两个的情况下,可以不用对AJAX返回值进行JS封装,若多个模板都存在AJAX请求,那么这样封装之后会简化代码的编写,不用重复编写相同的代码。
案例
AJAX返回请求值JS封装代码如下:
1 jQuery(function ($) { 2 var _ajax = $.ajax; 3 $.ajax = function (opt) { 4 var _success = opt && opt.success || function (a, b) { }; 5 var _opt = $.extend(opt, { 6 success: function (data, textStatus) { 7 if (data && data.ResultType && data.ResultType == 8) { 8 window.location.href = "/"; 9 return; 10 } 11 _success(data, textStatus); 12 } 13 }); 14 _ajax(_opt); 15 }; 16 });
说明:data.ResultType==8是当前用户Session都是的返回结果,此时会退回至登录页面。以上个人项目总结,希望对您有帮助。