我有一个“加载消息”,我已经出现并在asp.net应用程序中消失了。一个新的要求是,当单击链接按钮时,会出现加载消息,然后假设当excel对话框弹出打开或保存或取消(excel文件)时它会消失。
如何检测此对话框?回发发生,我正在使用Response.End,但似乎我无法让“加载覆盖层在与excel对话框交互后消失。”
这是在ASP.NET 3.5 / EXT JS(EXT.NET)中发生的,但我可以使用jQuery,就像在这个项目中一样。我和Fiddler玩过,但是我在DOM中提升事件和检测方面有点生疏。任何帮助表示赞赏。
答案 0 :(得分:0)
我可能会在一段时间内遇到同样的问题。这是堆栈帖子......
Download a file and update panel progress
如果您在此页面后面的代码中执行长时间运行的工作,您的更新面板将按预期运行..事件的生命周期可能是这样的。
我没有必要编写任何javascript来使用更新面板来完成这项工作。
<asp:UpdateProgress ID="progress1" runat="server" AssociatedUpdatePanelID="up">
<ProgressTemplate>
<div id="processMessage">
<table width="100%">
<tr>
<td>
Loading...
</td>
<td>
<img alt="Please wait..." src="../Images/spinner.gif" />
</td>
</tr>
</table>
</div>
</ProgressTemplate>
</asp:UpdateProgress>
<asp:UpdatePanel runat="server" ID="up">
<ContentTemplate>
<div id="excel" align="right">
<asp:Button runat="server" ID="btnExcelExport" Text="Export to Excel" OnClick="btnExcelExport_Click" />
</div>
<iframe runat="server" id="ifmExcel" width="0" height="0" marginheight="0" marginwidth="0" frameborder="0" />
</ContentTemplate>
</asp:UpdatePanel>
你完全可以使用javascript和ajax调用,使用beforeSend和complete事件来显示工作完成时的微调器,然后在完成后更改iframe的src attr,启动下载。
希望这有帮助。