我正在尝试使用要下载的文件使我的下载功能弹出,当我点击链接时,它将文件的二进制文件输出到div,我怎么能这样做,以便当我点击链接时,它会改为让我下载吗?我知道我可以使用查询字符串并在php中使用标题来实现它,但是我可以用类似的方式使用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>
答案 0 :(得分:2)
无法从AJAX请求下载文件
相反,您可以将网址加载到隐藏的<iframe>
。