jquery abort()ajax请求再发送另一个

jquery abort()ajax请求再发送另一个,第1张

jquery abort()ajax请求再发送另一个

创建所有请求的数组队列。然后,如果找到需要中止所有现有请求的位置,则可以遍历数组并在所有未决请求上调用中止。应该很简单。

尽管另一种方法是只保留一个内部标志,该标志指示当前是否正在处理一个请求,如果有请求,则跳过该请求。或者处理您认为合适的方式。

编辑2:所以我可以做的是有一个数组,您将所有ajax调用附加到该数组。从本质上讲,这只是发出一个XmlHttpRequest,这就是ajax调用返回的结果。所以

requests.push(    $.ajax({        type: 'post',        url: '/test.php',        data: search_data,        success: function(data) { $('#catalog').html(data);        }    }));

这会将所有请求添加到一个可以在某处定义的请求数组中。然后,当您想杀死所有挂起的请求时,可以遍历数组并调用abort,这将杀死该请求。

for(var i = 0; i < requests.length; i++)    requests[i].abort();

或者只是在函数外部定义一个变量,该变量是指示是否正在发出请求的标志。您甚至可以使其更加具体并存储搜索数据,并且仅跳过对相同数据有待处理请求的请求,并允许其他针对不同数据的请求。

希望这足以让您入门。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4955127.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-13
下一篇 2022-11-13

发表评论

登录后才能评论

评论列表(0条)

保存