function showwaitmsg() {
$("#wait").fadeIn();
return true;
}
function hidewaitmsg() {
$("#wait").fadeOut();
}
$("a:contains('Test1')").bind("click", function() {
if (showwaitmsg())
test2(); // Function contains XMLHttpRequest
hidewaitmsg();
});
<div id="wait" class="overlay" style="display: none">
Please Wait
<img src="~/loading.gif" />
</div>
我正在處理XMLHttpRequest時,試圖使用上面的代碼顯示「請稍候」消息。請求處理完畢後,等待div顯示太遲。你能告訴我應該怎麼做,讓點擊test1按鈕後立即顯示等待div?如何使div可見使用jQuery?
刪除'hidewaitmsg()'調用並將其放入ajax請求的成功調用中。 Ajax是異步的,所以你的隱藏消息被立即處理 –
發佈'test2()'的代碼 - 最好的方法可能是使用'XmlHttpRequest'中的回調函數來執行'fadeOut()'調用 –
使用jQuery Ajax .always函數,所以消息在所有情況下都被隱藏。 –