对于Intranet Web应用程序(文档管理),我想显示与某个客户关联的文件列表。生成的HTML如下所示:
<a href="file:///server/share/dir/somefile.docx">somefile.docx</a>
<a href="file:///server/share/dir/someotherfile.pdf">somefile.pdf</a>
<a href="file:///server/share/dir/yetanotherfile.txt">yetanotherfile.txt</a>
这很好用。不幸的是,当点击文本文件(或图像文件)时,Internet Explorer(我猜大多数其他浏览器)也坚持在浏览器中显示它而不是用关联的应用程序(例如记事本)打开文件。在我们的例子中,这是不受欢迎的行为,因为它不允许用户编辑文件。
此行为是否有一些解决方法(例如<a href="file:///..." open="external">
)?我知道这是一个特定于浏览器的东西,只有IE的解决方案会很好(毕竟它是一个Intranet应用程序)。
答案 0 :(得分:1)
您是否希望人们只是弄乱您服务器上的东西?我对此缺乏安全感......
我建议让用户在本地检查并使用数据库或类似信息,以便人们检查新的草稿。在将草稿实际写入服务器的文件系统之前,应以某种方式验证和验证草稿。
答案 1 :(得分:0)
我刚刚测试了它,它似乎有效(IE6,而不是FF或Chrome):
<HTML>
<script language="JavaScript">
function startWord(strFile)
{
var myApp = new ActiveXObject("Word.Application");
if (myApp != null)
{
myApp.Visible = true;
myApp.Documents.Open(strFile);
}
}
</script>
<a href="javascript:startWord('file:///server/share/dir/test.doc')">test.doc</a>.
找到它here。