Ajax Events

原文地址:http://api.jquery.com/Ajax_Events/

        你可以处理 Ajax 请求产生的许多不同的事件。这里有一个 Ajax 事件的完整列表,并说明了事件的触发顺序。

        下面是两个类型的事件:

      Local Events(本地事件)

        你可以在 Ajax 请求对象中通过回调函数处理这些事件。比如这样:

 $.ajax({
   beforeSend: function(){
     // Handle the beforeSend event
   },
   complete: function(){
     // Handle the complete event
   }
   // ......
 });

      Global Events(全局事件)

        这些事件通过 document 对象触发,可以使用任意的处理函数监听它们。你可以像下面这样做:

<pre name="code" class="javascript"> $(document).bind("ajaxSend", function(){
   $("#loading").show();
 }).bind("ajaxComplete", function(){
   $("#loading").hide();
 });

 

        全局事件可以通过在 Ajax 请求中传递特定的全局选项被禁止,像下面演示的这样:

 $.ajax({
   url: "test.html",
   global: false,
   // ...
 });

      Events (事件)

        这是 Ajax 全部事件的详细列表,并按照它们的触发顺序排列。每一个 Ajax 请求(除非一个全局选项被禁止)都会触发下面的事件列表。ajaxStart 和 ajaxStop 事件是关联到所有 Ajax 请求一起的事件。

  • ajaxStart (Global Event)

无论在何时发送 Ajax 请求,jQuery 都会检查是否存在其他 Ajax 请求。如果不存在,则 jQuery 会触发该 ajaxStart 事件。

  • beforeSend (Local Event)
这个事件在一个 Ajax 请求开始之前被触发,它允许你去修改 XMLHttpRequest 对象(如果你需要可以设置额外的头信息)。
  • ajaxSend (Global Event)
这个全局事件也在 Ajax 请求开始之前被触发。
  • success (Local Event)
这个事件仅在 Ajax 请求是成功的情况下被触发(服务器没有返回错误,数据也没有错误)。
  • ajaxSuccess (Global Event)
这个事件也仅在 Ajax 请求是成功的情况下被触发。
  • error (Local Event)
这个事件仅在 Ajax 请求发生错误的情况下被触发(你永远不能在同一个 Ajax 请求中同时监听到 error 和 success 的事件)。
  • ajaxError (Global Event)
这个全局事件和本地的 error 事件有着相同的触发条件。
  • complete (Local Event)
不管 Ajax 请求是否是成功的,这个事件都被触发。你总是会监听到一个 complete 的事件发生,甚至是同步的请求。
  • ajaxComplete (Global Event)
这个全局事件和本地的 complete 事件有着相同的触发条件。每当一个 Ajax 请求完成时将被触发。
  • ajaxStop (Global Event)
无论 Ajax 请求在何时完成 ,jQuery 都会检查是否存在其他 Ajax 请求。如果不存在,则 jQuery 会触发该 ajaxStop 事件。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值