Javascript window.open在IE中不打开
我正在尝试使用window.open打开word文档,如下所示Javascript window.open在IE中不打开,javascript,internet-explorer-8,Javascript,Internet Explorer 8,我正在尝试使用window.open打开word文档,如下所示 window.open("myworddoc.doc"); 它在FF中工作正常,但IE尝试打开选项卡,但立即关闭并跳回当前屏幕(不显示保存或打开文件的对话框) 有什么问题吗?这肯定是一种安全措施。使用JavaScript打开Word文档可能会产生恶劣的影响。想象一下,如果你正在浏览互联网,当你的页面加载时,有人打开了一个受感染的Word文档 就我个人而言,我会创建一个PHP文件,比如说“servedoc.PHP”,然后像这样打开该
window.open("myworddoc.doc");
它在FF中工作正常,但IE尝试打开选项卡,但立即关闭并跳回当前屏幕(不显示保存或打开文件的对话框)
有什么问题吗?这肯定是一种安全措施。使用JavaScript打开Word文档可能会产生恶劣的影响。想象一下,如果你正在浏览互联网,当你的页面加载时,有人打开了一个受感染的Word文档 就我个人而言,我会创建一个PHP文件,比如说“servedoc.PHP”,然后像这样打开该文件:
window.open("servedoc.php");
servedoc.php可以包含如下内容:
<?php
$file = "myworddoc.doc";
header("Cache-Control: public");
header("Content-Description: File Transfer");
header("Content-Disposition: attachment; filename=$file");
header("Content-Type: application/msword");
header("Content-Transfer-Encoding: binary");
readfile($file);
或者如果您正在使用.net(vb):
这样,如果您愿意,您可以让他们下载.doc或.zip文件。仅供参考:IE check ot浏览器中的一项安全功能通常不喜欢使用窗口打开弹出窗口。打开除非是用户触发的操作。@Emmanuel。讨论中说window.open应该在基于用户的操作上触发。我正在使用一个下拉值触发它。为什么要将application/zip
作为内容类型发送?Oups!复制粘贴了我的一个工作示例。忘了更改MIME类型,谢谢您指出这一点!
Response.ContentType = "image/jpeg" 'mime type of the file to serve.
Response.AddHeader("content-Disposition", "attachment;filename=YOURFILENAME")
Response.TransmitFile(YourFILEPath)