码迷,mamicode.com
首页 > Web开发 > 详细

扩展jQuery的方法统一处理AJAX调用过程中产生的异常错误信息

时间:2015-02-09 20:22:39      阅读:175      评论:0      收藏:0      [点我收藏+]

标签:扩展   jquery   ajax   异常   方法   

由于项目中大量的实用了.post使.post请求都改造为$.ajax请求,但由于两个方法的实现(需要的参数)等相差很大,修改起来很麻烦!

期间尝试使用定义“AJAX 请求发生错误时执行函数($(document).ajaxError())”
的方式来解决问题,但影响范围太大,长轮询发生的错误也被捕获,导致页面一打开就弹出系统异常的对话框。

所以这里采用扩展jQuery的方法的技术来解决问题:

/* 扩展jQuery.post方法
 * 用于支持错误处理,原来使用$.post的地方只需要改为$.postEx即可,不需要做其它改动;
 * 如果需要单独处理异常,请将第四个参数设置为异常处理函数;
 */
jQuery.extend({
    postEx:function(requestUrl, sendData, successCallback, errorCallback) {
        if (typeof errorCallback === ‘undefined‘){
            errorCallback = ajaxErrorEx;
        }

        $.ajax({
            url: requestUrl,
            data: sendData,
            type: "post",
            cache: false,
            dataType: ‘json‘,
            timeout: 30000,
            success: successCallback,
            error: errorCallback
        });
    }
});

统一异常处理:原来使用.post.postEx即可,不需要做其它改动;
单独处理异常:如果需要单独处理异常,请将第四个参数设置为异常处理函数;

扩展jQuery的方法统一处理AJAX调用过程中产生的异常错误信息

标签:扩展   jquery   ajax   异常   方法   

原文地址:http://blog.csdn.net/testcs_dn/article/details/43673627

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!