繁体   English   中英

在浏览器的保存对话框中显示Response.Binarywrite或打开新窗口并在保存后关闭

[英]Show Response.Binarywrite in browser save dialog or open new window and close after save

我的问题看起来像这样。 我有一个包含文档(标识)的网格。 现在,当有人连续单击时,我想允许他下载或显示该文档。 但是要使它变得更容易,可以说我将在单击按钮时执行此操作。 我尝试了两种方法,但是没有一种方法对我有效。

  1. 我试图在按钮上单击response.binarywrite:

      Response.Clear(); Response.ClearHeaders(); Response.ClearContent(); Response.ContentType = "application/postscript mime"; Response.AddHeader("content-disposition", "attachment; filename=test.ps"); Response.AddHeader("content-length", _excuteGetDocumentResult.Length.ToString()); Response.ContentEncoding = new System.Text.UTF8Encoding(); Response.BinaryWrite(_excuteGetDocumentResult); 

但是什么也没发生,当我尝试修改此代码时,我通常会遇到一些JavaScript错误,说要更改响应...

第二种方法是打开新窗口,并在页面加载时添加上面的代码。

<asp:Button Text="ShowResult" OnClientClick="radopen('ShowResult.aspx','ShowDocumentDialog'); return false;"
        runat="server" />

第二种方法可行,但是在保存或取消资源管理器保存文件对话框窗口后,打开的窗口仍然存在。 我试图添加一些JavaScript以将其关闭,但它仅在加载页面上没有response.binarywrite的情况下有效...

有什么想法可以实现我想要的吗?

在方法1。

尝试Response.End(); Response.BinaryWrite(_excuteGetDocumentResult);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM