我想每5秒钟用ajax调用更新视图。我以下面的方式完成了它。如何停止点击运行超时jquery函数并运行新函数?
function getData(a, b, c) {
$.ajax({
url : 'url',
success : function(data) {
$("#result").html(data);
setTimeout(getData, 5000, a, b, c);
}
})
}
$(document).ready(function() {
getData(1, 2, 3);
});
$('.btn').click(function(){
getData(4,5,6);
});
但是,通过这种方式尽可能多的功能正在运行尽可能多的点击。
我需要停止前一个并运行新的或更改运行功能的参数。
使用'clearTimeout()'停止你的setTimeout函数的执行.. –
我试着这但不能捕捉正在运行的事件。 clearTimeout(???) – CoderBoy
您可以在ajax调用中设置更多参数。 'async:false'。它会逐一打出每个电话。 – Ali