我正在使用jQuery BlockUI 插件在触发点击事件时显示忙碌消息。
在下面的场景中,它工作正常。忙碌消息在点击事件时显示并锁定 UI,并在回发完成后消失。
不涉及文件创建,它调用浏览器打开/另存为对话框
加价:
$(function() { // when document has loaded
($.unblockUI); //unlock UI
//Show busy message on click event and disable UI
$('#btnDemo').click(function() {
$.blockUI({ message: '<h3>Please wait...</h3>' });
});
});
<asp:Button ID="btnDemo" runat="server" Text="Hello World" /><br/>
后面的代码:
Protected Sub btnDemo_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnDemo.Click
Label1.Text = "Hello World"
Threading.Thread.Sleep(6000)
End Sub
现在,问题来了。涉及文件创建,它调用浏览器打开/另存为对话框。忙碌消息在点击事件时显示并锁定 UI,但在回发完成和用户保存文件时不会消失和解锁 UI。
加价:
$(function() { // when document has loaded
($.unblockUI); //unlock UI
//Show busy message on click event and disable UI
$('#btnCreateFile').click(function() {
$.blockUI({ message: '<h3>Please wait...</h3>' });
});
});
<asp:Button ID="btnCreateFile" runat="server" Text="Create File" /><br/>
代码隐藏:
Protected Sub btnCreateFile_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnCreateFile.Click
Dim filename As String = "demo.xls"
Response.ContentType = "application/vnd.ms-excel"
Response.AddHeader("Content-Disposition", String.Format("attachment;filename={0}", filename))
Response.Clear()
Response.[End]()
End Sub
当打开/另存为对话框出现时,我想摆脱繁忙的消息并解锁 UI。