2

我在一个页面上有一个 asp.net 超链接,单击它会在新窗口中打开一个新页面:

lnkPrint.NavigateUrl = blah blah;
lnkPrint.Target = "_blank";

在这个新页面中是一个 UserControl,它使用 OpenXML 创建一个 Word 文档。我试图在不关闭新窗口的情况下向用户展示 Word 文档。但是,该窗口只是将文档呈现给用户并关闭返回到带有超链接的页面的窗口。

HttpContext.Current.Response.ClearContent();
HttpContext.Current.Response.ClearHeaders();
HttpContext.Current.Response.AddHeader("content-disposition", "attachment; filename=" +     masterFileName);
HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.UTF8;
HttpContext.Current.Response.TransmitFile(masterContainer);
HttpContext.Current.Response.Flush();
HttpContext.Current.Response.Close();

有谁知道为什么新窗口正在关闭以及如何让它保持打开状态?

谢谢,

4

1 回答 1

0

由于您清除内容然后传输文件,因此“页面”上没有任何内容可显示。连一页都没有。

如果您想打开一个新选项卡,在那里显示一条消息,然后开始下载,您必须让新页面通过 JavaScript 调用另一个页面(下载本身)。

于 2013-06-12T19:29:25.343 回答