3
我發送ajax請求並在我的js/html應用程序中處理響應。該設備是Windows Mobile CE,沒有jQuery支持,設備瀏覽器(IE)不支持eventhandlers,所以我不能使用異步調用。無論如何,我的問題是,在發送活動之前,我想顯示一個,請等待消息,並在收到回覆後,我想再次隱藏它。發送ajax請求和接收響應(同步)
function sendRequest() {
// make please wait visible
document.getElementById("pleasewait").style.display = "block";
console.log("pleasewait visible.");
var XHR = new XMLHttpRequest();
// synch call
XHR.send(sendData);
// suppose it takes 20-30 seconds
console.log("response received :" + XHR.responseText);
XHR.open('POST', 'url', false);
// make please wait hidden
document.getElementById("pleasewait").style.display = "none";
}
但是,當我運行它時,PLEASEWAIT元素可見,當我們收到響應(不發),併成爲immediatelty再次隱藏,即使這個過程需要例如20-30秒。控制檯消息以正確的順序顯示,但請稍候元素沒有正確更新。我嘗試了一些setTimeouts,但沒有想要的結果。我無法添加一些jsfiddle,因爲很難在遠程實現ajax請求處理程序。
工作!謝謝! – benchpresser