我正在尝试修改此http://www.w3schools.com/php/php_ajax_database.asp
我只是使用那个^的HTML部分。我的php文件只有
<?php
echo rand();
?>
它工作正常!每次我在下拉列表中切换内容时它都会更新。 但是,我希望它每秒运行一次,但它不起作用。这就是我的HTML的样子:
<html>
<head>
<script>
function showUser() {
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","ajax/test.php?q="+str,true);
xmlhttp.send();
}
setInterval(showUser, 1000);
</script>
</head>
<body>
<div id="txtHint"><b>this will be updated</b></div>
</body>
</html>
SetInterval不会运行它。 php文件仍然只有echo rand();. 它在某些方面起作用,但我相信我搞砸了一些东西。提前谢谢。
答案 0 :(得分:3)
setInterval()
可能正常运行,但showUser()
以错误结束,因为str
未定义。检查您的JavaScript控制台是否有错误。
删除对str
的引用,或在某处定义它。
答案 1 :(得分:0)
试试这个:
setInterval(function(){showUser()}, 1000);
答案 2 :(得分:0)
替换
setInterval(showUser, 1000);
与
window.onload = function() {
setInterval(showUser, 1000);
}