[英]Hide modal window after Response.End() in asp.net
我有一個按鈕執行以下操作:
Response.Clear();
Response.Buffer = true;
Response.AddHeader("content-disposition", "attachment;filename=GridViewExport.csv");
Response.Charset = "";
Response.ContentType = "application/text";
//my content is created
Response.Output.Write(sb.ToString());
Response.Flush();
Response.End();
這是我的按鈕定義:
<asp:Button ID="Button1" runat="server" onclick="Excel_Click" Text="Export to Csv" onclientclick="ShowModal();"/>
如您所見,我調用了一個javascript函數,該函數執行以下操作:
function ShowModal() {
var divmodal = document.getElementById("divModal");
divmodal.style.display = '';
}
即顯示一個帶有標簽“加載”的模態窗口我的問題是當我下載文件時我得到了生成的csv但之后我的模態窗口仍然出現,那是因為頁面沒有被刷新
有什么我能做的嗎?
提前致謝
簡短的回答是你不能這樣做。
使用按鈕回發后,您所在的頁面正在等待加載新內容。 此時您無法從后面的代碼對當前頁面dom進行任何控制,例如發送一個javascript代碼來執行。
即使您確實發送了整頁,然后是一個新的整頁。
你可以做一些其他的技巧,例如使用處理程序下載文件和鏈接,或使用ajax發送命令,然后再返回一個處理程序的鏈接 - 但是這樣,有一個完整的帖子回來,你不能去做。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.