我正在使用 setTimeout + .load 每 5 秒重新加载我的 php 文件:table.php,但如果没有更改,我不希望它重新加载文件。我想出的一个解决方案是创建一个名为 changes.php 的文件,如果有更改则当前回显 1,如果没有更改则回显 0。如果 changes.php 回显 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>
最佳答案
<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>
关于javascript - 仅在更改时刷新表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35884979/