我正在使用代码
下载文件btnDownloadTemplate.Attributes.Add( "onClick", "window.open('StudyReport/WordReportTemplate.doc', 'OpenTemplate', 'resizable=no,scrollbars=no,toolbar=no,directories=no,status=no,menubar=no,copyhistory=no');return false;" );
这将显示一个弹出窗口,并显示下载对话框。如何避免弹出窗口,屏幕上只显示下载对话框?
答案 0 :(得分:3)
我得到了答案。 我删除了属性并在其中添加了click事件。
string path = Server.MapPath("");
path = path + @"\StudyReport\WordReportTemplate.doc";
string name = Path.GetFileName( path );
Response.AppendHeader( "content-disposition", "attachment; filename=" + name );
Response.ContentType = "Application/msword";
Response.WriteFile( path );
Response.End();
答案 1 :(得分:2)
不要做Window.Open,只需将页面的URL更改为文档。
答案 2 :(得分:2)
常见的诀窍是在<iframe>
中打开链接。这不需要JavaScript,也不会打开弹出窗口或空白标签。 <iframe>
可能非常小,因此几乎看不见。
<iframe name="DownloadDummy">
</iframe>
链接:
<a href="http://example.com/file.csv" target="DownloadDummy">Download File</a>
答案 3 :(得分:1)
此外,您可以使用window.location而不是window.open。
var file ='StudyReport / WordReportTemplate.doc'; window.location = file;
答案 4 :(得分:0)
您是否查看了HttpResponse.WriteFile方法?