【发布时间】:2014-03-04 10:04:45
【问题描述】:
var F = function() {
$.ajax({
.
.
.
})
.done(function() {
console.log('Hey, I am done');
setInterval(F, 10000);
});
}
所以我想每 10 秒更新一次。问题是每次ajax调用完成时都会调用自己两次。所以输出是:
Hey, I am done //First call (without delay)
// After 10 seconds
Hey, I am done
// After 20 seconds
Hey, I am done
Hey, I am done
// After 30 seconds
Hey, I am done
Hey, I am done
Hey, I am done
Hey, I am done
然后继续…… 我显然在这里遗漏了一些东西!谁能赐教?
【问题讨论】:
-
您应该在回调之外的
.done()或setInterval(F)中使用setTimeout。 -
哦,谢谢大家,我只能“接受”一个答案,所以我“接受”第一个答案
标签: jquery ajax setinterval