如何针对特定的 Ajax 请求抑制全局 ajaxStart/ajaxStop 事件

3
我使用类似以下代码来处理ajax加载计时器:
  $body = $("body");
  $(document).on({
    ajaxStart: function() { $body.addClass("loading");    },
    ajaxStop: function() { $body.removeClass("loading"); }
  });

但是有一些特定的调用,我希望屏蔽这个功能。我该怎么做呢?我不想手动删除加载类。

1个回答

4
您可以在特定的ajax调用中添加global:false选项。
ajaxStart和ajaxStop是全局处理程序。如果您不想抑制某些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
});

@timpone 很高兴能够帮助到你 ;) - Amit Joki

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接