我正在使用setTimeout + .load每5秒重新加载我的php文件:table.php,但如果没有更改,我不希望它重新加载文件。我提出的一个解决方案是创建一个名为changes.php的文件,如果有更改,则当前回显1,如果没有,则返回0。如果changes.php echos 1我想刷新其他,则需要等待另外5秒再次检查。任何帮助将不胜感激,因为我对如何处理javascript部分感到困惑。
<div id="table"></div>
<script type="text/javascript">
$(document).ready(function(){
refreshTable();
});
function refreshTable(){
// if changes.php = 0 then load table.php else wait another 5 seconds
$('#table').load('table.php', function(){
setTimeout(refreshTable, 5000);
});
}
</script>
答案 0 :(得分:1)
<script>
$(document).ready(function(){
checkForChanges();
setTimeout(checkForChanges, 5000);
});
function checkForChanges() {
$.get("changes.php", function(response) {
if(response === "1") {
refreshTable();
}
});
}
function refreshTable(){
$('#table').load('table.php');
}
</script>