`
gegewuqin9
  • 浏览: 29274 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

重写$.ajax方法

    博客分类:
  • js
阅读更多
(function($) {
	var _ajax = $.ajax;
	$.ajax = function(url, opt){ 
		layer.load(2);
		if("object" == typeof url) {
			opt = url;
		} else {
			opt = {url: url};
		}
		opt.cache = opt.cache || true;
		opt.type = opt.type || 'post';
		opt.data = opt.data || {};
		opt.dataType = opt.dataType || 'JSON';
		var fn = {  
            error: opt.error,  
            success:opt.success  
        };
		opt.error = function(XMLHttpRequest, textStatus, errorThrown) {
			layer.closeAll('loading');
			if(fn.error) {
				fn.error(XMLHttpRequest, textStatus, errorThrown);
			} else if(XMLHttpRequest.message){
				layer.alert(XMLHttpRequest.message);
			} else {
				layer.alert("超时或系统异常");
			}
		};
		opt.success = function(data, textStatus, jqXHR) {
			layer.closeAll('loading');
			if(fn.success) {
				fn.success(data, textStatus, jqXHR);
			} else if(data.message) {
				layer.msg(data.message, {time:2000});
			} else if(opt.statusCode == 200) {
				layer.msg('操作成功', {time:2000});
			}
		};
		return _ajax(opt);
	};
})(jQuery);

注:
1.此方法在引入jquery后调用
2.layer是一个比较好用的弹出层框架
3.网上搜到的很多都没有完全支持原生的ajax,如必须在_ajax(opt)前加return,如果不加$.load()方法就会报错。
分享到:
评论

相关推荐

    jQuery实现监控页面所有ajax请求的方法

    // 重写$.ajax方法 $.ajax = function(setting) { // 增加计数器 ajaxCount++; // 获取原有的complete回调 var cb = setting.complete; // 设置新的complete回调,包括原有回调和减少计数器的逻辑 setting....

    Ajax全局加载框(Loading效果)的配置

    在Ajax进行后台数据请求的过程中,我们有时候会希望用户能知道页面后台还在做一些事情,这时候就需要给用户一个非常明确的提示,也就是我们所谓的进度条 ...$.ajaxSetup({ beforeSend: function () { //ajax请求之前 }

    重写jquery的ajax

    ajax重写,重写jquery的ajax方法,自动增加加载状态,跨域修改等

    javascript重写alert方法的实例代码.docx

    if ($.alerts.dialogClass) $("#popup_container").addClass($.alerts.dialogClass); var pos = ($.browser.msie && parseInt($.browser.version) == 6) ? 'absolute' : 'fixed'; $("#popup_container").css({ ...

    ajax 操作全局监测,用户session失效的解决方法

    // 重写ajax方法,先判断登录在执行success函数 $.ajax = function (opt) { var _success = opt && opt.success || function (a, b) { }; var _opt = $.extend(opt, { success: function (data, textStatus) { try {...

    ajax and jQuery

    $.ajax()是一个更为灵活的方法,可以同时支持GET和POST等多种请求方式: ```javascript $.ajax({ url: "path/to/resource", type: "POST", data: { param1: value1 }, success: function(data) { // 处理响应...

    Js拦截全局ajax请求

    在JavaScript中,最常用的库是jQuery的$.ajax()方法,以及现代浏览器原生支持的fetch API。除此之外,还有许多其他库,如axios和superagent,它们提供了类似的接口。 为了全局拦截Ajax请求,我们需要关注两个关键点...

    Ajax和servlet数据交互小实例

    - **发送请求**:使用jQuery的Ajax方法,如`$.ajax()`,设置URL指向Servlet的路径,指定请求类型(GET或POST),以及要发送的数据。 - **接收请求**:在Servlet中,重写`doGet()`或`doPost()`方法,通过`request`...

    ajax重写方法搭配后台filter返回status实现ajax请求跳转登录页面

    在前端,我们需要重写Ajax请求以处理特定的HTTP状态码。通常,当我们发送一个Ajax请求时,我们关注的是成功的200状态码或者错误状态码如404或500。但在需要用户登录的场景下,服务器可能会返回一个非200的状态码,...

    jquery ajax servlet json简单demo

    在jQuery中,$.ajax()方法是进行AJAX请求的核心函数,它可以实现异步数据获取与页面更新。 【AJAX使用】在jQuery中,使用AJAX通常包括以下步骤: 1. 引入jQuery库:确保HTML文件中包含了jQuery库,通常通过CDN链接...

    JQuery 1.4库包及中文API.rar

    - **$.fn.extend()**:扩展jQuery对象,增加新的方法或重写已有的方法。 - **$.get() 和 $.post()**:简化的GET和POST AJAX请求。 - **$.getJSON()**:专门用于获取JSON数据的AJAX方法。 - **$.grep()**:根据指定...

    重写 ajax 实现 session 超时跳转到登录页面实例代码

    3. **重写Ajax**: 当使用Ajax请求时,前端也需要配合后端的过滤器处理Session超时的情况。可以重写jQuery的`$.ajax`函数,添加一个自定义的逻辑。在原生的`$.ajax`方法中,我们可以添加一个错误处理函数,当收到...

    ajax 模拟购物车加入货物并

    使用`$.ajax()`或`$.post()`(jQuery提供的便捷方法)发送POST请求到Servlet,将用户选择的商品信息(如商品ID、数量等)发送到服务器。例如: ```javascript $.ajax({ url: '/add-to-basket', type: 'POST', ...

    jquery 重写 ajax提交并判断权限后 使用load方法报错解决方法

    var _ajax = $.ajax; ``` 接着,我们开始重写`ajax`方法。在这个新的`ajax`方法中,我们首先定义了一个`_success`变量,用于存储原本的`success`回调函数: ```javascript var _success = opt && opt.success || ...

    SSH 学习的所有api帮助文档

    - **AJAX**:$.ajax()或$.get()、$.post()方法用于异步数据交换,增强用户体验。 - **DOM操作**:如$.append()、$.html()、$.attr()等,用于动态修改HTML结构和属性。 - **动画效果**:$.fadeIn()、$.slideUp()等...

    jQuery.switchPage.js:基于jQuery的全屏切换插件

    jQuery.switchPage.js 知识点 ...例如 $.Ajax() 、 $.extend() 方法 二、对象级别组件开发:即挂在jQuery原型下的方法,这样通过选择器获取的jQuery对象实例也能共享该方法,也称为动态方法。 $.fn.foo

    jquery插件实现的asp.net自动完成控件

    数据可以通过AJAX请求获取,使用jQuery的`$.ajax`或`$.getJSON`方法。 例如,假设我们有一个名为`AutoCompleteService.asmx`的Web服务,其方法`GetSuggestions`接收一个输入参数并返回JSON数组: ```javascript $....

    javascript写一个ajax自动拦截并下载数据代码实例

    总结起来,本实例通过重写`$.ajax`方法实现了Ajax请求的自动拦截和数据下载,涉及了jQuery的Ajax方法、Blob对象、URL对象以及自定义命名空间等JavaScript技术。通过理解这些知识点,开发者可以更好地控制和扩展Ajax...

    自定义分页控件[支持参数分页,URL重写].rar

    这可能涉及到JavaScript中的Ajax请求,或者在服务器端使用异步处理技术。 6. **响应式设计**:为了适应不同设备和屏幕尺寸,分页控件需要具备响应式设计。NikeBoyPagerDemo可能展示了如何让分页控件在桌面、平板和...

    jqury+ajax+json应用介绍

    5. **Ajax支持**:jQuery提供了丰富的Ajax接口,包括`$.ajax()`、`$.get()`、`$.post()`等,这些方法极大地简化了异步请求的过程。 #### Ajax与JSON详解 Ajax(Asynchronous JavaScript and XML)是一种在无需重新...

Global site tag (gtag.js) - Google Analytics