浏览器使用JavaScript下载文件提示

时间:2009-04-07 18:57:26

标签: javascript file-browser

我想知道是否有任何方法可以使用JavaScript实现浏览器的下载文件提示。

我的理由 - 用户将上传文件到本地文件服务器,无法从网络服务器访问。换句话说,两者都将在不同的领域!

例如,假设网站托管在www.xyz.com上,但文件将驻留在本地文件服务器上,其地址为\\10.10.10.01\Files\file.txt。如何使用ActiveX和VBscript上传/传输文件到本地文件服务器! (不要问: - )

所以我将本地文件路径存储在我的数据库中并将该数据绑定到网格。当用户单击该链接时,该文件将在窗口中打开(使用JavaScript)。

问题是某些文件类型,如text,jpg,pdf等在浏览器窗口中打开。如何使用客户端脚本实现content-typecontent-disposition?这甚至可能吗?

编辑: 本地文件服务器有一个窗口的共享文件夹,文件保存在该文件夹中。

4 个答案:

答案 0 :(得分:6)

“content-disposition:attachment”几乎是强迫它的唯一方法,必须在响应头中设置。

答案 1 :(得分:4)

如果文件托管在您的示例中的Web服务器上,您可以执行以下操作:

window.location.replace(fileUrl);

..浏览器将弄清楚如何处理该文件。这适用于大多数文件,例如.xls,.csv等,但请记住,这不是完全证明,因为用户的MIME处理程序设置将决定如何处理文件...即如果是一个.txt文件很可能只是在浏览器中显示,不会给出“文件下载”对话框。

答案 2 :(得分:4)

截至2015年8月,添加"下载"属性到您的代码可以启用您正在寻找的行为,至少在Chrome中是这样。

答案 3 :(得分:1)

您可以尝试使用type="application/octet-stream"的普通超链接。似乎在FF中工作,但IE和Opera忽略该属性。