Javascript 仅在更改时刷新表

Javascript 仅在更改时刷新表,javascript,php,mysql,ajax,Javascript,Php,Mysql,Ajax,我使用setTimeout+.load每5秒重新加载一次php文件:table.php,但如果没有更改,我不希望它重新加载该文件。我提出的一个解决方案是创建一个名为changes.php的文件,如果有更改,该文件当前会回显1,如果没有更改,则回显0。如果changes.php echos 1,我想刷新表,否则需要再等待5秒钟才能再次检查。任何帮助都将不胜感激,因为我对如何处理javascript部分感到困惑 <div id="table"></div> <s

我使用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>

$(文档).ready(函数(){
刷新表();
});
函数刷新表(){
//如果changes.php=0,则加载table.php,否则再等待5秒钟
$('#table').load('table.php',function(){
设置超时(刷新表,5000);
});
}

$(文档).ready(函数(){
checkForChanges();
设置超时(检查更改,5000);
});
函数checkForChanges(){
$.get(“changes.php”,函数(响应){
如果(响应=“1”){
刷新表();
}
});
}
函数刷新表(){
$('#table').load('table.php');
}

然后在发生更改后调用函数。。。。。例如一次改变或改变等
<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>