[英]Jquery Ajax only Works one time
我有一個頁面正在div中重新加載數據,我正在使用jquery更新div,但是它僅觸發一次。
我的頁面如下所示:
<html><head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.min.js" type="text/javascript"></script>
</head><body>
<div id="messages" style="width:100%;font-size:120%;">
<?php echo $tbl; ?>
</div>
<script type="text/javascript">
$(document).ready (function () {
var updater = setTimeout (function () {
$('div#messages').load ('new_hud.php?update=true');
}, 2000);
});
</script>
</body></html>
我期望腳本每2秒加載一次數據。 它會在最初的2秒鍾后初始化重新加載數據,但之后再也不會執行。 我在這里想念什么?
將setTimeout
替換為setInterval
,就像這樣
var updater = setInterval(function () {
$('div#messages').load ('new_hud.php?update=true');
}, 2000);
您需要使用setInterval而不是setTimeout。
在指定的延遲后,setTimeout將觸發一次。
setInterval將以指定的間隔重復觸發。
$(document).ready(function () {
var updater = setInterval(function () {
$('div#messages').load('new_hud.php?update=true');
}, 2000);
});
您正在使用setTimeout()並想使用setInterval() 。
var updater = setInterval (function () {
setTimeout函數本身不會每2秒循環一次腳本,因此您的代碼所做的基本上是在頁面准備好加載數據之后等待2就是這樣。
將setTimeout包裝為“ for”或“ while”周期以加載所需的次數。
希望它有用:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.