jQuery -取消$.张贴以防止排队



好的,所以我正在创建一个完整的web应用程序使用AJAX与一些本地存储等。

我遇到的问题是,有时我双击,或点击标签来回快速调用$。post调用。

问题在于当回调函数被触发时,它们会被回调并相互覆盖,直到最后一个调用返回为止。

显然这是个问题。我需要做的是取消当前的POST调用,只是得到最后一个回调。

I have try:

// Make Call:
if(call != undefined){
    call.abort();
}
var call = $.post(url,{do:'stuff'},function(response){
     // callback stuff:
},'json');

一直说它未定义,如果可能的话,我宁愿使用。post而不是。ajax。

提前感谢您的帮助!

只需在click时取消click事件的绑定,在回调时重新绑定。

如果取消不能捕获所有挂起的xhr,您可以做的一件事是:增加一个计数器并将其传递给后端,以防止旧响应殴打新响应。只需让后端在响应中包含计数器值,然后您的回调可以在覆盖之前将其与本地计数器进行比较。

相关内容

  • 没有找到相关文章

最新更新