2012-04-03 57 views
6

我有一个“下载文件”在我的JavaScript文件中定义为HREF:数据URI在Firefox CSV文件中没有把扩展名为.csv

$("#downloadTag").html("<a href=data:text/csv;charset=utf-8," + encodeURIComponent(data) + ">Download</a>"); 

在Chrome它的工作原理为,即预期的,当我点击这个下载链接它将文件名称命名为“download.csv”。但是,在Firefox中,它会放一些乱七八糟的名字,比如“puzdb.part”。

有人能请我指出我做错了什么吗?

感谢

编辑: 这里是的jsfiddle演示:http://jsfiddle.net/kLJz9/

编辑#2: 我注意到,在Windows上它不把扩展名为.csv镀铬以及和行为的Firefox仍然是相同(即.part的扩展名)

回答

3

对于Chrome,您可以通过向您的定位标记添加下载属性来指定文件名/扩展名。

<a href="URI" download="MyFile.csv">Download</a> 

此属性仅适用于chrome v 14+,不适用于其他浏览器。

我也在寻找这个问题的解决方案,但我希望这有助于。

编辑:

下载属性应该可以解决你在Windows机器上和铬遇到的问题。

+0

感谢您的回复Brad。数据URI的工作很好,但我希望它可以被所有浏览器支持。 :-(它甚至可以在Mac上完美运行,它只是Windows不支持的内容,请让我知道,如果你确实找到了解决方法,谢谢! – test123 2012-04-25 23:30:56

+0

Firefox的这个bug有:https:// bugzilla。 mozilla.org/show_bug.cgi?id=622400(我仍然在Mac OS X 10.6.8和Firefox 18.0.2上遇到过)。 – Piran 2013-02-07 09:45:35

相关问题