【发布时间】:2020-07-16 13:09:44
【问题描述】:
我正在尝试使用 JavaScript 下载文件,但不让它在新选项卡或窗口中打开。
到目前为止,我所拥有的是:
var link = document.createElement("a");
link.download = filename;
link.href = fileurl;
link.click();
我一直在对此进行大量研究,但找不到任何可行的方法,因为该文件来自我无法控制且无法修改其标题的 Google 签名 URL。
这必须发生在客户端 JavaScript/jQuery 中。
编辑
它实际上是动态的,所以可以有 X 个文件,如果我可以将它们全部下载为 zip,那就更好了。
for(var i=0; i<filenames.length; i++){
var formData = new FormData();
formData.append('filename', filenames[i]);
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function(){
if(this.readyState == 4 && this.status == 200){
fileurl = this.responseText;
var link = document.createElement("a");
link.download = filenames[i];
link.href = fileurl;
link.click();
}
}
xmlhttp.open("POST", "url_to_get_download_urls");
xmlhttp.send(formData);
}
【问题讨论】:
标签: javascript jquery download