私のアプリケーションの1つで。jquery ui プログレスバーを使用してタスクの進行状況を表示しています。その中で、特定の期間の経過後の進行状況を繰り返し読み取るために、js で setinterval メソッドを使用しました。ローカルホストでは問題なく動作していましたが、サーバーにアップロードすると; 現在、progress_track ファイルは 1 回だけ呼び出され、間隔の後に再度呼び出されることはありません。以下はそのためのコードです。
var myInterval = setInterval(function () {
/* get progress status */
(jQuery).getJSON('includes/progress_track.php?filename=<?php echo $file;?>', function (data) {
/* update jQueryUI progressbar */
(jQuery)("#progressbar").progressbar({
value: data,
/* onComplete actions */
complete: function (event, ui) {
(jQuery)(this).progressbar("destroy");
(jQuery)(".progressbartext").hide();
(jQuery)(".progressbar").hide("fast");
}
});
(jQuery)(".progressbartext").html("<span class=\"progress\">" + data + "%</span>");
/* reset interval */
clearInterval(myInterval);
});
/* 2 seconds*/
}, 2000);
/* prevent from page reload */
return false;