1

頻繁に更新したいテーブルが 2 つあります。一方が機能し、もう一方が機能しないことを除いて、どちらもほとんど同じ JavaScript を使用しています。
最初のテーブルのコードは次のとおりです (1 回のみ更新):

function refreshTable() {
    $('#tablefill').load('table.php', function(){
       table1refr=setTimeout(refreshTable, 10000);
    $.each(selected, function(index, value) {
       document.getElementById(value).innerHTML = '-';
    });
    });
}

そして、これが2番目です(本来、10秒ごとに更新されます):

function refreshFileTable() {
    $('#filetablefill').load('filetable.php', function(){
       table2refr=setTimeout(refreshFileTable, 10000);
    });
}

両方でsetTimeoutをsetIntervalに切り替えてみましたが、うまくいきましたが、ページに1分ほど座った後、ブラウザータブが完全にフリーズしました。それを防ぐ方法を提案できる場合は、setInterval を使用したいと思います。

4

1 に答える 1

1

毎回設定する必要がない setInterval を使用したい場合は、これを試してください

$(document).ready(function(){
  setInterval(refreshFileTable,1000);
})

function refreshFileTable() {
    $('#filetablefill').load('filetable.php', function(){
       // do nothing or remove this handler entirely
       // if you were setting intervals over here you have created new interval in every 10 seconds         and thats how it hanged 
    });
}
于 2013-08-04T19:06:24.127 に答える