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函数,所以消息在所有情况下都被隐藏。 –