当前位置: 首页 > 面试题库 >

对特定请求禁用ajaxStart()和ajaxStop()

朱英范
2023-03-14
问题内容

我正在使用.ajaxStart()和.ajaxStop()在提出ajax请求时显示模式。(在开始和停止之间)

现在,我想添加一个longpoll函数,该函数一直等待通知,类似于本网站左上角的通知。

我的问题现在在于仅针对longpolling请求禁用此模式。

在处理程序上注册“加载屏幕”:

$(document).ajaxStart(handleAjaxStart);
$(document).ajaxStop(handleAjaxStop);

我的longpoll函数

$.ajax({
    timeout: 35000,
    url: longPollUrl,
    success: function(data){
        if(data.queCount) $('#numQueCount').html(data.queCount);
        if(data.queAccept) $('#numQueAccept').html(data.queAccept);
    }, 
    dataType: 'json',
    complete: longpoll
});

我试过了:

$().off('ajaxStart');
$().off('ajaxStop');

..并在开始轮询后重新连接处理程序,但没有任何乐趣。

我还尝试向其中引入一个全局变量handleAjaxStart(),该变量将在函数的第一行返回,但这似乎完全破坏了加载屏幕。

有什么想法可以实现吗?


问题答案:

我想到了..

options对象中.ajax()有一个名为的属性global

如果设置为false,则不会触发ajaxStart该呼叫事件。

$.ajax({
    timeout: 35000,
    url: longPollUrl,
    success: function(data){
        if(data.queCount) $('#numQueCount').html(data.queCount);
        if(data.queAccept) $('#numQueAccept').html(data.queAccept);
    }, 
    global: false,     // this makes sure ajaxStart is not triggered
    dataType: 'json',
    complete: longpoll
});


 类似资料:
  • 问题内容: 最近,存在一个问题,即如何在特定终端的Python Flask中禁用日志记录(跳过一个终端的Flask日志记录?)。 例如,这对于您不希望使日志混乱的情况是有道理的。 我为Flask解决了这个问题,但是当使用Gunicorn运行Flask时,我的解决方案不再起作用。 如何使用Gunicorn实现此目的?我想要常规的日志记录行为,但是没有端点的任何日志。 问题答案: 我想通了-您需要重写

  • 我试图爬过craiglist的论坛类别。组织机构(https://forums.craigslist.org/).我的蜘蛛: 我通过错误回调收到以下消息: [失败实例:Traceback:: /usr/local/lib/python2.7/site-packages/twisted/internet/defer.py: 455:回调 /usr/local/lib/python2.7/site-p

  • 问题内容: 我在站点的文档上有一些ajax调用,这些调用根据ajax状态显示或隐藏进度条 我想基本上在网站的其他部分覆盖这些方法,这些地方会进行许多快速的小型ajax调用,并且不需要弹出和弹出进度条。我试图将它们附加到其他$ .getJSON和$ .ajax调用中或将其插入。我已经尝试过将它们链接起来,但是显然那不好。 问题答案: 2018注意: 此答案已过时; 您可以随时对这个答案进行修改,以解

  • Csrf筛选器验证从“验证”提交的Csrf令牌,当我从HTTP向https提交请求时,抛出无效令牌异常(403)。如何在这种情况下禁用csrf令牌身份验证?

  • 我的控制器是 我对Spring完全陌生,请帮帮我怎么做?

  • 第一次投递到stackoverflow。 我只是试图使用jQuery从json url获取数据。第一个问题是跨源请求块,即使库应该停止这个问题,像ajax跨源js(抱歉不提供这个链接,我太新了,在这里有超过2个链接),我仍然没有运气,一样交叉原点错误。 所以我搬到了JSONP。 (我也尝试过JSONP请求的AJAX语法) 现在我可以在网络选项卡中看到数据正在返回,但状态是403禁止。chrome网