我想用ajax& amp自动刷新“result”div setInterval函数。
但是有一个问题。我希望在500毫秒内自动刷新,但有时ajax加载超过500毫秒。在这种情况下包含问题。我想如果ajax加载时间750毫秒然后间隔时间750(或任何时间更长500毫秒)其他500.我怎么能这样做?
var refreshId = setInterval(function()
{
var number=$("#number").html();
$.ajax({
type: 'GET',
url: 'ajax.php',
data: 'num='+number,
success: function(ajaxResult) {
$('#result').html(ajaxResult);
}
});
if(number<100){
number++;
$("#number").html(number);
}
}, 500);
答案 0 :(得分:1)
尝试成功功能中的条件。
success: function(ajaxResult) {
$('#result').html(ajaxResult);
if(number<100){
number++;
$("#number").html(number);
}
}
答案 1 :(得分:1)
使用setTimeout
代替setInterval
。在ajax响应函数中设置超时功能,同步服务器调用就没有问题。
(function pollStep(){
var number=$("#number").html();
$.ajax({
type: 'GET',
url: 'ajax.php',
data: 'num='+number,
success: function(ajaxResult) {
$('#result').html(ajaxResult);
setTimeout(pollStep, 500);
}
});
if(number<100){
number++;
$("#number").html(number);
}
})();