【发布时间】:2013-08-15 19:59:39
【问题描述】:
我试图每隔“n”个时间段执行一个javascript函数,该函数将调用一个php文件,该文件将执行某种代码,但不幸的是它不起作用,这里是代码
<p id="code"></p>
<script>
var myVar=setInterval(function(){showUser()},1000);
function showUser() {
var xmlhttp = null;
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
} else {
// code for IE6, IE5
xmlhttp = new ActiveXObject('Microsoft.XMLHTTP');
}
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById('txtHint').innerHTML = xmlhttp.responseText;
}
}
xmlhttp.open('GET', 'getuser.php');
xmlhttp.send();
document.getElementById("code").innerHTML=t;
}
</script>
【问题讨论】:
-
“不起作用”并不能完全帮助我们找出问题所在。你真的想要每秒用一个 ajax 请求来敲击你的服务器吗?以及您使用自己的 ajax 代码而不是使用 jquery 之类的东西的任何原因?
-
定义“它不起作用”。这段代码在执行吗?它是在发出 AJAX 请求吗?是否收到预期的响应?
-
这是什么
document.getElementById("demo").innerHTML=t;?似乎没有定义t。它可能会导致您的代码出现异常并且无法正常工作。 -
浏览器控制台中出现什么错误?
-
顺便说一句,我可以看出你是一个老派的开发人员,所以这里有一个老派的提示:
xmlHttp.open函数在onreadystatechange的绑定之前被调用,否则它将不起作用IE6 及以下。
标签: php javascript timing