clearInterval不能与setInterval一起工作
clearInterval not working with setInterval
我对下面的代码有一个问题。基本上,我正在实现一种轮询机制,但是当它应该停止轮询时,它只是继续轮询。轮询无限。
还有其他方法可以强制它停止吗?
SearchPoll函数只被调用一次。
function SearchPoll(){
var i = setInterval(function ()
{
var url = "Search.aspx?polling=true";
$.ajax(
{
url: url,
success: function (data)
{
clearInterval(i);
},
error: function ()
{
clearInterval(i);
}
});
}, 1000);
}
如果您想终止所有请求,您需要使用从$.ajax返回的XMLHTTPRequest对象。下面是一个例子:
function SearchPool(){
var xhrArray = [],
interval = setInterval(function () {
var url = "Search.aspx?polling=true";
xhrArray.push($.ajax({
url: url,
success: function (data) {
for(var i = 0; i < xhrArray.length; i+= 1) {
xhrArray[i].abort();
}
clearInterval(interval);
},
error: function () {
clearInterval(interval);
}
}));
}, 20);
}
SearchPool();
这个小提琴似乎工作正常…http://jsfiddle.net/sramam/yZTAK/
相关文章:
- 如何在php中创建一个函数,该函数与文本区域一起工作,通过输入类似[color:red]的内容来打印具有等效颜色的文本
- document.title函数可以't设置它与php一起工作
- "此网站似乎使用滚动链接定位效果.这可能不能很好地与异步平移一起工作;
- 非常简单的js测试;Don’不要和Minko一起工作
- 无法使我的文本参数与我的查询一起工作
- 为什么Angularjs验证don't与输入[type=“number”]一起工作
- 无法使vash 0.8.0与express 4.12.3一起工作
- 如何使Angular JS控制器与指令一起工作
- 无法使autocompletion与bootstrap和php代码点火器一起工作
- 注入的元素和jQuery脚本.如何让他们一起工作
- 两个独立工作的javascript函数,但不能一起工作
- 角度和砖石一起工作
- Node http-proxy-middleware 不能与本地服务器一起工作
- jQuery脚本不想一起工作
- page.js使examples/hash与hashbang:true一起工作
- javascript使jquery倒计时与UTC时间一起工作
- jQuery.not()选择器无法与类一起工作
- Rails3-可排序列表不能与wysihtml5一起工作
- 替换匹配函数给出了未定义的错误,但它与替换一起工作
- 按钮上的数据加载消息无法与ajax调用一起工作