1.这些方法用于注册事件处理器,用来处理页面上的任何 Ajax 请求,当某些事件触发后,这些事件处理器被调用。如果jQuery.ajaxSteup()中的 global 属性被设置为 true (这也是默认设置),那么,每个 Ajax 请求都会触发全局事件。注意:全局事件绝对不会被跨域(cross-domain)脚本或 JSONP 请求触发,和 global 属性的设置毫无关系。

2.  .ajaxComplete()方法:每当一个Ajax请求完成,jQuery就会触发ajaxComplete事件,在这个时间点所有处理函数会使用.ajaxComplete()方法注册并执行。如果global属性被设置为false,当完成Ajax请求后不会调用这个方法。

     无论哪一个Ajax请求被完成,所有ajaxComplete处理函数都将被执行。如果我们必须区分不同的请求,我们可以使参数传递给这个处理函数。 他是通过事件对象, XMLHttpRequest 对象和设置对象中使用的请求,做每一次ajaxComplete 处理器执行的。举个例子,我们能限制我们的回调到只处理事件处理某一特定的URL:

$(document).ajaxComplete(function(event, xhr, settings) {
if ( settings.url === "ajax/test.html" ) {
$( ".log" ).text( "Triggered ajaxComplete handler. The result is " +
xhr.responseHTML );
}
});

     当Ajax请求完成后显示一个信息:

$(document).ajaxComplete(function(event,request, settings) {
$( "#msg" ).append( "<li>请求完成。</li>" );
});

3.  .ajaxError()方法:每当一个Ajax请求出错时,jQuery就会触发ajaxError事件,在这个时间点所有处理函数会使用.ajaxError()方法注册并执行。注意:这里的handler处理器调用跨域的脚本和跨域的JSONP请求。如果global属性被设置为false,当完成Ajax请求失败后不会调用这个方法。

     无论哪一个Ajax请求被完成,所有ajaxError处理器都将被执行。如果我们必须区分不同的请求,我们可以使参数传递给这个处理器。 他是通过事件对象、 XMLHttpRequest 对象和设置对象中使用的请求,每次ajaxError 处理器执行,它传递事件对象,jqXHR对象(在 jQuery 1.5之前是XHR对象),和用来创建请求的设置(settings)对象。如果请求失败,因为JavaScript抛出一个异常,并且作为第四个参数的异常对象被传递给处理函数。举个例子,我们能限制我们的回调到只处理事件处理某一特定的URL:

$( document ).ajaxError(function(event, jqxhr, settings, exception) {
if ( settings.url == "ajax/missing.html" ) {
$( "div.log" ).text( "Triggered ajaxError handler." );
}
});

     当Ajax请求失败后显示一个信息:

$(document).ajaxError(function(event, request, settings) {
$( "#msg" ).append( "<li>Error requesting page " + settings.url + "</li>" );
});

4.  .ajaxSend()方法:每当一个Ajax请求即将发送,jQuery就会触发ajaxSend事件,在这个时间点所有处理函数都会使用.ajaxSend()方法注册并执行。如果global选项设置为false,调用$.ajax()$.ajaxStep()方法将不会被触发。

     无论哪一个Ajax请求被发送,所有ajaxSend处理器都将被执行。如果我们必须区分不同的请求,我们可以使参数传递给这个处理器。 每次ajaxSend 处理器执行,它传递事件对象,jqXHR对象(在 jQuery 1.4中是XMLHttpRequest对象),和用来创建请求的设置(settings object)对象。如果请求失败,因为JavaScript抛出一个异常,并且作为第四个参数的异常对象被传递给处理程序。举个例子,我们能限制我们的回调到只处理事件处理某一特定的URL:

$(document).ajaxSend(function(event, jqxhr, settings) {
if ( settings.url == "ajax/test.html" ) {
$( ".log" ).text( "Triggered ajaxSend handler." );
}
});

     当Ajax请求即将发送前显示一个信息:

$(document).ajaxSend(function(event, request, settings) {
$( "#msg" ).append( "<li>Starting request at " + settings.url + "</li>" );
});

5.  .ajaxStart()方法:每当一个Ajax请求即将发送,jQuery检查是否有任何其他响应过程中的Ajax请求(注:未完成的请求)。如果没有检查到,jQuery就会触发ajaxStart事件,在这个时间点所有处理函数都会使用.ajaxStart()方法注册并执行。如果global选项设置为false,调用$.ajax()$.ajaxStep()方法将不会被触发。

     当Ajax请求开始发送时显示一个信息 (没有一个Ajax请求是已经激活的):

$(document).ajaxStart(function() {
$( "#loading" ).show();
});

6.  .ajaxStop()方法:每当一个Ajax请求完成,jQuery检查是否有任何其他响应过程中的Ajax请求(注:未完成的请求)。如果都执行完成,jQuery就会触发ajaxStop事件,在这个时间点所有处理函数都会使用.ajaxStop()方法注册并执行。如果一个未处理完成的Ajax请求用beforeSend回调函数返回false取消,ajaxStop事件也被触发。如果global选项设置为false,调用$.ajax()$.ajaxStep()方法将不会被触发。

     在Ajax请求停止后隐藏加载信息:

$(document).ajaxStop(function() {
$( "#loading" ).hide();
});

7.  .ajaxSuccess()方法:每当一个Ajax请求成功完成,jQuery就会触发ajaxSuccess事件,在这个时间点所有处理函数都会使用.ajaxSuccess()方法注册并执行。如果global选项设置为false,调用$.ajax()$.ajaxStep()方法将不会被触发。

     无论哪一个Ajax请求被完成,所有ajaxSuccess处理器都将被执行。如果我们必须区分不同的请求,我们可以使参数传递给这个处理器。 他是通过事件对象、 XMLHttpRequest 对象和设置对象中使用的请求,做每一次ajaxSuccess 处理器执行的。 举个例子,我们能限制我们的回调到只处理事件处理某一特定的URL:

$(document).ajaxSuccess(function(event, xhr, settings) {
if ( settings.url == "ajax/test.html" ) {
$( ".log" ).text( "Triggered ajaxSuccess handler. The ajax response was: " +
xhr.responseText );
}
});

     当Ajax请求成功完成时,显示一个信息:

$(document).ajaxSuccess(function(event, request, settings) {
$( "#msg" ).append( "<li>Successful Request!</li>" );
});

jQuery之Ajax--全局Ajax事件处理器的更多相关文章

  1. jQuery全局Ajax事件处理器

    1.  .ajaxComplete( handler(event, XMLHttpRequest, ajaxOptions) ) 每当一个Ajax请求完成,jQuery就会触发ajaxComplete ...

  2. Jquery表单序列化和AJAX全局事件

    Jquery表单序列化 1.必须放在form标签内: 2.控件必须有name属性: 3.控件的value值会提交到服务器: 如: <form id="form1"> & ...

  3. 锋利的jQuery读书笔记---jQuery中Ajax--序列化元素、Ajax全局事件

    serialize()方法: 作用于一个jQuery对象,它能够将DOM元素内容序列化为字符串,用于Ajax请求. <!DOCTYPE html> <html> <hea ...

  4. jquery的ajax全局事件详解

        jquery在ajax方面是非常强大和方便的,以下是jquery进行ajax请求时方法模板: $.ajax({ type: "get", url: "" ...

  5. 全局 Ajax 事件处理器

    jQuery中将Ajax请求和响应分成了若干(5)个阶段 并且允许开发者在Ajax请求和响应的不同阶处理不同的逻辑, 这些方法用于注册事件处理器,用来处理页面上的任何 Ajax 请求,当某些事件触发后 ...

  6. jQuery中的Ajax全局事件

    Ajax全局事件 全局事件会在有ajax请求的情况下触发. 方法名称 说明 ajaxStart(callback) Ajax请求开始时执行的函数 ajaxStop(callback) Ajax请求结束 ...

  7. jQuery / zepto ajax 全局默认设置

    jQuery / zepto 的 $.ajax 方法需要配置很多选项, 有些是很常用的每个 ajax 请求都要用到的, 可以全局设置, 避免每次都写. 注意: 此处用的 jQuery 版本是 1.8. ...

  8. ajax全局事件

    作用:当你的页面存在很多ajax事件的话,我们有一些信息是公共的,可以复用,我们可以用全局事件进行编写,因为每一个ajax事件调用,都会触发ajax全局事件. jquery的ajax方法的全部全局事件 ...

  9. jquery ajax 中各个事件执行顺序

    jquery ajax 中各个事件执行顺序如下: 1.ajaxStart(全局事件) 2.beforeSend 3.ajaxSend(全局事件) 4.success 5.ajaxSuccess(全局事 ...

随机推荐

  1. C# PPT Operator

    来自:http://blog.csdn.net/lxzh12345/article/details/47047491 最近在写一个工具,设计到将界面内容到处到PPT中,且导出的内容能够编辑.网上搜了很 ...

  2. 联想A880 DIY 换触摸屏屏幕

    今年初入手的Lenovo A880手机,由于摔坏了屏幕不过能正常显示,咨询了联想的售后,说触摸屏和显示屏是分离的,换触摸屏需要280左右 为发挥DIY的精神,准备自己来处理这个屏幕 第一步:购买屏幕, ...

  3. 【代码笔记】iOS-通过颜色来生成一个纯色图片

    一,效果图. 二,代码. RootViewController.m - (void)viewDidLoad { [super viewDidLoad]; // Do any additional se ...

  4. 【Swift】TTTAttributedLabel使用小记

    前言 TTTAttributedLabel继承自UILabel,很方便基于现有代码进行修改,Star超过4K+,今天用了一下作点笔记. 声明  欢迎转载,但请保留文章原始出处:)  博客园:http: ...

  5. AndroidStudio配置gradle,让App自动签名

    最近开发关于微信一系列功能,发现分享.支付必须要打包签名才能测试,太耽误事了,耗时耗力...在网上扒拉扒拉资料,发现有很多前辈都处理过类似问题,非常感谢大家的分享,参考链接:http://blog.c ...

  6. MS SQL Could not obtain information about Windows NT group/user 'domain\login', error code 0x5. [SQLSTATE 42000] (Error 15404)

    最近碰到一个有趣的错误:海外的一台数据库服务器上某些作业偶尔会报错,报错信息如下所示: -------------------------------------------------------- ...

  7. JavaScript(js)的replace问题的解决

    我是前端的门外汉,js我用得比较少.今天意外发现js自带的replace “居然”只替换1处,而其它的许多许多语言都是替换全部的. 你可能会说,切,我早就知道.高手请绕道. 你可能会说,用js的正则就 ...

  8. SQLServer 日期函数大全

    一.统计语句 1.--统计当前[>当天00点以后的数据] ) ) ORDER BY dateandtime DESC 2.--统计本周 3.--统计本月 4.统计当前 SELECT * FROM ...

  9. 记录一次MongoDB3.0.6版本wiredtiger与MMAPv1引擎的写入耗时对比

    一.MongoDB3.0.x的版本特性(相对于MongoDB2.6及以下): 增加了wiredtiger引擎: 开源的存储引擎: 支持多核CPU.充分利用内存/芯片级别缓存(注:10月14日刚刚发布的 ...

  10. [Java入门笔记] Java语言基础(一):注释、标识符与关键字

    注释 什么是注释? 注释是我们在编写代码时某段代码.某个方法.某个类的说明文字,方便大家对于代码的阅读.被注释的内容不会被编译.执行. Java的注释分为三种类型:单行注释.多行注释.文档注释. 单行 ...