javascript文件下载

javascript文件下载,javascript,jquery,html,Javascript,Jquery,Html,我需要下载一个文件(test.xml),并允许/提示用户在单击下载按钮时保存该文件。该文件位于“url”中http://localhost/test/test.xml“ 我添加了html代码 <input type=button value="Download" onclick='javascript:download()/> 但这会在新窗口中打开页面。如何提示下载和保存文件。任何输入都会有帮助。谢谢您必须更改标题中的内容类型。您需要编写一些服务器脚本或配置Web服务器 我在谷歌上

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

我添加了html代码

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

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

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

我在谷歌上搜索了一个链接,它将帮助你找到正确的方向:

html:

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

REF:

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

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

另一种方法是使用xmlhttprequest获取文件,然后使用flash插件保存文件。我曾经使用过这种方法,可以找到flash swf

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

,我想知道,您为这个问题标记了java?如果java和javascirpt不同,他可能不知道。@LastStar007如果您认为[java]标记错误,你应该提出一个修改建议。对错误标签的否决是完全不合适的。如果您认为用户有意且反复地将其问题打错标签(例如,为了更大的可视性或一般的故意破坏),那么您应该标记该问题以引起主持人的注意。向下投票和向上投票应该直接处理问题的质量。或者他标记了
java
,因为他使用的是基于他之前问题的
java
服务器端。由于这个问题可能需要服务器端代码来解决,我认为
java
是一个合适的标记。实际上,这是需要在服务器端完成的事情,所以java可能没有那么错;-)您可以在XHR上设置标题。。。有什么可以做的吗?XHR帮助您修改请求,我知道您必须更改响应中的内容类型标题。这是错误的,它不会显示“另存为”对话框。阅读你正在引用的帖子。
  $('#downloadthis').click( function() {
window.location.href = 'http://localhost/test/test.xml';
 } );
Content-disposition: attachment; filename=test.xml;