2011-11-25 81 views
9

有没有人知道如何在以下用例中使用setInterval()后终止间隔?JS - 如何清除使用setInterval()后的时间间隔

在此先感谢!

$(document).ready(function(){ 
    setInterval(function(){ 
    $.ajax({ url: "test.php", 
     success: function(result){ 
     $("#results").append(result); 
     } 
    }); 
    }, 1000); 
}); 

test.php的

$CT = date('Y-m-d H:i:s', time()); 
echo $CT; 
+0

什么循环?你的意思是间隔“循环”? –

回答

22
var interval = setInterval(function() { 
    $.ajax({ 
     url: "test.php", 
     success: function(result) { 
      $("#results").append(result); 
     } 
    }); 
}, 1000); 

clearInterval(interval); 
+0

感谢@mmmshuddup,但使用代码后页面上没有显示任何内容。 – Acubi

+0

那么你不应该'clearInterval()'_right away_。你需要多少次运行? –

+2

我觉得你的意思是使用'setTimeout()'来代替。在这种情况下,它只会运行一次,然后你不需要清除任何东西。 –

5

使用清楚terval方法clearInterval();传递你的变量,你在其中setInterval

例如:

var refreshIntervalId = setInterval(fname, 10000); 

clearInterval(refreshIntervalId); 
0

如果你打算只运行函数一次,我会建议使用Window SetTimeout() Method在执行一次,使后一分多余的清算的时间间隔。