我有一个遗留应用程序,在某个时候,会在其中一个页面中生成以下代码:
window.location.href = "http://localhost:8080/myApplication/manuals/charts.xls";
当Mozilla看到这个时,会打开一个下载对话框,其中包含“打开... \另存为......”选项。
IE(v7和v8)无法打开对话框。它接受文件并在页面中呈现它,就像一些HTML;但它是一个二进制文件,所以你看到的只是屏幕上的垃圾。
之前有没有遇到过这个?
EDIT1:这适用于某些IE浏览器但不适用于所有浏览器。我在想IE的配置问题。此外,对于.ppt
和.doc
文件,它的工作原理只适用于.xls
个文件。
EDIT2:即使我在页面中放置了一个链接,如:
click <a href="http://localhost:8080/myApplication/manuals/charts.xls">here</a> for the XLS
单击它时不会显示对话框。它只是写在页面中。
答案 0 :(得分:0)
您需要确保您的Web服务器正在为xls文件发送正确的MIME类型。
查找包含文件WEB-INF
的目录web.xml
。将其添加到web-app
元素中的文件:
<mime-mapping>
<extension>xls</extension>
<mime-type>application/octet-stream</mime-type>
</mime-mapping>