我尝试使用setInterval每10秒执行一次php脚本update.php并刷新div id = verification。由于某种原因,setInterval阻止脚本运行。关于在哪里放置\ change setInterval的任何建议都会很感激,因为我很难过(抱歉入门级javascript用户在这里)。为清楚起见,我省略了所有不相关的细节,例如变量。
<div id="verification"></div>
<script id="verification" language="javascript" type="text/javascript">
$(function() {
$.ajax({
url: 'update.php', //php
data: "", //the data "caller=name1&&callee=name2"
dataType: 'json', //data format
success: function(data) //on receive of reply
{
var foobar = data[2]; //foobar
$('#verification').html("(<b>" + foobar + "</b>)"); //output to html
}
});
});
setInterval(10000); //every 5 secs
</script>
答案 0 :(得分:1)
你正在以错误的方式使用setInterval - 你可以在这里阅读:
http://www.w3schools.com/js/js_timing.asp
另请注意,AJAX调用是异步的 - 当程序正在进行时,并不意味着之前的AJAX调用已经结束。你可以使用一些jQuery机制“等待”AJAX completition,比如绑定ajaxComplete或使用when