如何为特定的ajax调用抑制全局ajaxStart / ajaxStop

时间:2014-04-28 02:19:44

标签: jquery ajax

我使用类似以下内容来处理ajax加载计时器:

  $body = $("body");
  $(document).on({
    ajaxStart: function() { $body.addClass("loading");    },
    ajaxStop: function() { $body.removeClass("loading"); }
  });

但是有一些特定的调用我希望这个被抑制。我该怎么做?我不想手动删除加载类。

1 个答案:

答案 0 :(得分:4)

您可以为特定的ajax调用添加global:false选项。

ajaxStartajaxStop是全局处理程序。如果您不希望某些ajax调用被禁止,只需将global:false添加到您的ajax。

1

$.ajax({
  url:'some url',
  success: function(){
       // this ajax will trigger ajax start and stop
  }
});

2

$.ajax({
   url:'some url',
   success: function(){
       // this ajax will not trigger ajax start and stop as it has global set to false
   },
   global: false
});