У меня есть следующий сценарий на моем веб-странице:Javascript остановить интервал функции асинхр
tid = setInterval(checkBounty, 1000);
function checkBounty(){
var elapsed = (Date.now()/1000) - parseInt($(".bounty").data('created')) ;
$(".remaining-time").html(valid - elapsed); //update remaining time until bounty expires
if (elapsed> valid){
$.POST('', {id: id}, function(){
console.log ('bounty cancelled');
clearInterval(tid);
});
//do an ajax post to cancel the bounty;
}
}
Это вызывает Аякса пост несколько раз, так как оно выполняется асинхр. Как я могу избежать этого?
EDIT
Я обновил этот вопрос с кодом, который я использовал, забыл добавить clearInterval. Теперь я понимаю, что аякс не отвечал менее чем за одну секунду, и функция снова вызывалась.
он запускает несколько запросов ajax не потому, что выполняется асинхронно, а потому это его поведение – micnic