발생하는 동안보고하려는 장기 실행 데이터베이스 업데이트가 있습니다. 내가 발사 할 인터벌 시간을 으로 만들었습니다. setInterval에서 많은 문제를 겪었고 간단 해 보이지만이 코드로는 발사 할 수 없습니다. checkSaveStatus 코드는 얼마나 많은 행이 저장되었는지를 알려주는 상태 보고서를 가져옵니다. 기본 기능을 작동 시키면 결과를 표시하기 위해 한 번 향상시켜 보겠습니다.javascript setInterval proble
저는 이것이 Ajax 호출을 처리하는 방식과 관련이 있다고 생각하기 시작했습니다.
var checkTimer;
function checkSaveStatus() {
var saveStatus = ajaxCall("WebServices/FLSAService.asmx/CheckFLSASaveStatus");
if (saveStatus == null) {
clearInterval(checkTimer);
return;
}
log('saveStatus: ' + saveStatus.InputCount + '/' + saveStatus.ResultCount + ':' + saveStatus.SaveComplete, 'FLSA');
if (saveStatus.SaveComplete) {
reportSaveComplete = true;
clearInterval(checkTimer);
}
}
checkTimer = window.setInterval(checkSaveStatus, 1000);
... make an asynchronous Ajax call that takes a long time to complete
... the checkSaveStatus code doesn't fire until the Ajax call completes