弹出模态对话框后,在模态对话框内下载文件失败

BruceLin2008 2010-08-17 04:46:56
我在页面A.aspx中有一个按钮,点击时处理:
string sURL = "<script type='text/javascript'>window.showModalDialog('B.aspx',window,'');</script>";
Response.Write(sURL);

然后在模态对话框B.aspx中有一个LinkButton,点击时,如果直接在按钮事件中处理文件下载,则根本不会弹出下载框,下载的代码如下:
string sFilePath = Server.MapPath("File\\123.txt") ;
System.IO.FileInfo file = new System.IO.FileInfo(sFilePath);
Response.Clear();
Response.ClearContent();
Response.ClearHeaders();
Response.Charset = "utf-8";
Response.Buffer = true;
Response.AddHeader("Content-Disposition", "attachment; filename=" + file.Name);
Response.AddHeader("Content-Length", file.Length.ToString());
Response.ContentType = "application/octet-stream";
Response.ContentEncoding = System.Text.Encoding.UTF8;
Response.WriteFile(file.FullName);
Response.Flush();
Response.End();
下载的代码在非模态对话框中测试通过。

我再尝试点击LinkButton,打开C.aspx页面,在C页面中处理下载代码,结果还是弹出来晃一下就没了,偶尔会弹出下载对话框,但是文件名却是C.aspx,打开C页面的代码如下:
Response.Write("<script type='text/javascript'>window.open('C.aspx?FileName=" + Path.GetFileName(sFilePath) + "');</script>");

在网上找了很久,都没有找到合适的解决方法,所以到这里来咨询,希望得到高手的回答,谢谢。
...全文
155 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
BruceLin2008 2010-08-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 net_lover 的回复:]
在B.aspx里套一层frameset,
frameset的frame进行下载
[/Quote]
能不能详细一点,谢谢。
在B.aspx页面好像不支持frameset
孟子E章 2010-08-17
  • 打赏
  • 举报
回复
在B.aspx里套一层frameset,
frameset的frame进行下载

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧