重写Jquery的ajax,$.ajax拦截

开发中遇到一个问题,要统一处理ajax返回的结果,比如success时,如果返回的data里面包含提示信息,就统一提示。找了点代码,这里做个备份。

;(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) {
                //错误方法增强处理
                fn.error(XMLHttpRequest, textStatus, errorThrown);
            },
            success: function (data, textStatus) {
                //成功回调方法增强处理
                fn.success(data, textStatus);
            }
        });
        _ajax(_opt);
    };
})(jQuery);
时间: 2024-09-29 01:52:34

重写Jquery的ajax,$.ajax拦截的相关文章

jquery学习之AJAX

1,关于AJAX的简单介绍 AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). AJAX 不是新的编程语言,而是一种使用现有标准的新方法. AJAX 是与server交换数据并更新部分网页的艺术,在不又一次载入整个页面的情况下. 2,什么是 AJAX ? AJAX = 异步 JavaScript 和 XML. AJAX 是一种用于创建高速动态网页的技术. 通过在后台与server进行少量数据交换,AJAX 能够使网页实现异步

Jquery实现AJAX拦截

前几天项目需要实现一个AJAX拦截,于是就用jquery写了一个,这里分享一下. 需求是这样的,ajax不是我来写,所有说我是不能动ajax的,并且我也不知道什么时候它会发生,为了方便项目经理让我把它封装成一个插件,使用的时候只要给对应的元素加一个自定义属性就可以使用. 其实项目就是不想让用户多次点击,如果发送出去的还没有响应就显示一个正在加载. 如果用原生JS写,还是有些麻烦的,必须重写AJAX,这样我就用jquery了,因为它有这个功能. ajaxStart:在发送ajax的时候会调用这个函

深入理解ajax系列第九篇——jQuery中的ajax

前面的话 jQuery提供了一些日常开发中需要的快捷操作,例如load.ajax.get和post等,使用jQuery开发ajax将变得极其简单.这样开发人员就可以将程序开发集中在业务和用户体验上,而不需要理会那么繁琐的XMLHTTPRequest对象.jQuery对ajax操作进行了封装,在jQuery中$.ajax()属性最底层的方法,第2层是load().$.get()和$.post()方法,第3层是$.getScript()和$.getJSON()方法.下面将详细介绍jQuery中的aj

从零开始学习jQuery (六) jquery中的AJAX使用

本篇文章讲解如何使用jQuery方便快捷的实现Ajax功能.统一所有开发人员使用Ajax的方式. 一.摘要 本系列文章将带您进入jQuery的精彩世界, 其中有很多作者具体的使用经验和解决方案,  即使你会使用jQuery也能在阅读中发现些许秘籍. 本篇文章讲解如何使用jQuery方便快捷的实现Ajax功能.统一所有开发人员使用Ajax的方式. 二.前言 Ajax让用户页面丰富起来, 增强了用户体验. 使用Ajax是所有Web开发的必修课. 虽然Ajax技术并不复杂, 但是实现方式还是会因为每个

jQUery_review之jQuery的终极ajax方法$.ajax()

经过的项目大大小小也有非常多的了,印象中很多框架低层封装的方法都是在ajax()方法的基础上进行扩展的.ajax方法可以说是jQuery提供的各式各样的ajax相关方法的鼻祖,所有其他的比如load,get,post,getScript,getJson方法都是扩展于jQuery.ajax方法. 下面是一个实际的DEMO,将上面的参数都用了一遍: 前端页面的代码: <%@ page language="java" import="java.util.*" pag

深入理解jQuery中的ajax

前面的话 jQuery提供了一些日常开发中需要的快捷操作,例如load.ajax.get和post等,使用jQuery开发ajax将变得极其简单.这样开发人员就可以将程序开发集中在业务和用户体验上,而不需要理会那么繁琐的XMLHTTPRequest对象.jQuery对ajax操作进行了封装,在jQuery中$.ajax()属性最底层的方法,第2层是load().$.get()和$.post()方法,第3层是$.getScript()和$.getJSON()方法.下面将详细介绍jQuery中的aj

Jquery异步提交$.ajax的使用

function test(){ var myEntity=new Object(); myEntity.pro1="xxx"; myEntity.pro2=10; $.ajax({ type: "post",//提交方式,post,get,put,delete 等 url:"http://ip:port/applicationName/action_url", data: JSON.stringify(UserChannel),//JSON.s

Jquery基础之ajax

ajax是Asynchronous JavaScript and XML(异步JavaScript和XML)的简称,ajax并不是单一的技术而是利用一系列交互网页应用相关的技术形成的结合体,ajax揭开了无刷新更新页面的全新时代. ajax优点:不需要插件支持.优秀的用户体验.提高Web程序的性能.减轻服务器和宽带的负担.缺点:浏览器支持度不足.破浏览器前进后退按钮的正常功能.对搜索引擎的支持不足.开发和调试工具缺乏. Jquery对ajax操作进行了封装,ajax主要的几种方法是load().

在jquery中使用AJAX

在jquery中使用封装好的AJAX会对开发效率起到极大的便利,因此掌握jquery中的一系列AJAX封装函数是做好页面数据交互的必备技能: 1.在之前,我们首先需要详细了解AJAX异步请求接受的五中响应消息,根据不同的响应类型进行不同的操作 (1)text/plain    // 明文 服务器端: header('Content-Type: text/plain'); echo 'succ'; 客户端: if(xhr.responseText==='succ'){ ... } (2)text/