javascript - 如何从javascript下载文件

标签 javascript ajax download

我正在尝试使用要下载的文件弹出我的下载功能,当我单击链接时它会将文件的二进制文件输出到 div,我怎样才能做到这一点以便当我单击链接时,它会要求我下载吗?我知道我可以使用 querystring 和在 php 中使用 header 来完成它,但是我可以以类似的方式使用 ajax/javascript 来完成吗?谢谢,这是我尝试过的:

<html>
<head>
<script>
function Download(plan_name)
{
    if (window.XMLHttpRequest)
    {
        xmlhttp=new XMLHttpRequest();
    }
    else
    {
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }

    xmlhttp.onreadystatechange=function()
    {
        if (xmlhttp.readyState==4 && xmlhttp.status==200)
        {
            var resp = xmlhttp.responseText;
            document.getElementById("txtHint").innerHTML=resp;


            //HOW TO SHOW test.zip in a save-as dialog?
        }
    }

    xmlhttp.open("GET","fetcher.php?file=/raid0/data/naswebsite/Projects/Projects/07-003_Dawson_Mine/Flight\ Plans/Dawson_Sth_1211_AMG_700.zip");
    xmlhttp.send();
}

</script>
</head>
<body>

<a href="#" onClick="Download();">Test Download</a>
<div id="txtHint"></div>

</body>
</html>

最佳答案

无法通过 AJAX 请求下载文件。
相反,您可以在隐藏的 <iframe> 中加载 URL。 .

关于javascript - 如何从javascript下载文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13597516/

相关文章:

jquery - 回调成功未调用,状态码为201

php - 使用 PHP 打开下载对话框

url - Ansible-从Github存储库下载最新版本的二进制文件

html - 如何在 HTML 中创建下载链接?

javascript - jQuery 无法点击菜单

javascript - 通过点击表头来排序

javascript - 使用 Javascript 或 CSS3 制作动画?

php - 投票中的一些问题

c# - 如何使用 AJAX 调用 ASP.NET 根页面中的 Web 方法

javascript - JS onunload 事件并不总是有效