ajax全局事件

做用:当你的页面存在不少ajax事件的话,咱们有一些信息是公共的,能够复用,咱们能够用全局事件进行编写,由于每个ajax事件调用,都会触发ajax全局事件。jquery

  jquery的ajax方法的所有全局事件:ajax

    ajaxStart:ajax请求开始前app

    ajaxSend:ajax请求时ide

    ajaxSuccess:ajax获取数据后函数

    ajaxError:ajax请求发生错误后url

    ajaxComplete:ajax请求完成时code

    ajaxStop:ajax请求中止后blog

不使用全局事件的作法是:给单个ajax加一个global:false;事件

  1.ajaxStart回调函数

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

$(document).ajaxStart(function() {
   $( "#loading" ).show();//等待画面
 });

  2.ajaxSend

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

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

  3.ajaxSuccess

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

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

  4.ajaxError

    .ajaxError()方法:每当一个Ajax请求出错时,jQuery就会触发ajaxError事件,在这个时间点全部处理函数会使用.ajaxError()方法注册并执行。若是global选项设置为false,调用$.ajax()$.ajaxStep()方法将不会被触发。

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

  5.ajaxComplete

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

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

  6.ajaxStop

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

$(document).ajaxStop(function() {
      $( "#loading" ).hide();
});ajax
相关文章
相关标签/搜索