阻止ajax.complete的方法



有没有办法阻止.complete调用启动?done和fail还不够好,因为整个部分都有递归。(我希望它即使失败也能再做一次)

request.complete(function(){
                myrefresh = setTimeout(function(){updateMenu(ID);}, 5000);
            });

是我的ajax调用的完整方法,每5秒运行一次。最后,当这个更新完成时,我将收到request.done的回复,它将给我一个条件化的标志。我想做这样的事:

if(flag=0) {  request.complete(function(){
                myrefresh = setTimeout(function(){updateMenu(ID);}, 5000);
            });
} else { clearInterval(myrefresh) }

但在构建一个大型时

    var request = $.ajax({  
            url: etc

设置。

有什么想法吗?

关于如何设置?我似乎无法让.done return(text)var在.complete区域工作。

我认为您正在寻找setInterval()和clearInterval(。它们是本机JavaScript函数,允许您在给定的时间间隔内重复执行函数。

var intervalId = setInterval(updateMenu, 5000, ID);
// When you want to stop....
clearInterval(intervalId);

最新更新