javascript文件下载

时间:2012-08-06 18:44:50

标签: javascript jquery html

我需要下载一个文件(test.xml)并允许/提示用户在点击下载按钮时保存文件。该文件位于URL“http://localhost/test/test.xml”。

我添加了HTML代码

<input type=button value="Download" onclick='javascript:download()/>

和javascript代码

function download() {
   var url = "http://localhost/test/test.xml";
       window.open(url, 'Download');
}

但是这会在新窗口中打开页面。如何提示下载并保存文件。任何输入都会有所帮助。感谢

4 个答案:

答案 0 :(得分:2)

您必须更改标题中的内容类型。您需要执行一些服务器脚本或配置您的Web服务器。

我用Google搜索了一个可以帮助您朝着正确方向前进的链接:http://www.boutell.com/newfaq/creating/forcedownload.html

答案 1 :(得分:2)

使用初始代码,如果您有权访问后端,请求xml时,请添加以下标题:

Content-disposition: attachment; filename=test.xml;

另一种方法是使用xmlhttprequest获取文件,然后使用flash插件保存它。我稍微使用了这种方法,可以找到flash swf here

答案 2 :(得分:0)

将xml的响应头的内容类型设置为application/xml

答案 3 :(得分:-1)

html:

<input id="downloadthis" value="Download"/>

在javascript标记内:

  $('#downloadthis').click( function() {
window.location.href = 'http://localhost/test/test.xml';
 } );

参考:https://stackoverflow.com/a/4864264/405117