javascript - 单击按钮时如何让用户下载多个文件?

标签 javascript html apache extjs download

所以我有一个正在运行的 httpd 服务器,它具有指向一堆文件的链接。假设用户从文件列表中选择三个文件进行下载,它们位于:

mysite.com/file1 
mysite.com/file2
mysite.com/file3

当他们单击下载按钮时,我希望他们从上面的链接下载这三个文件。

我的下载按钮看起来像这样:

var downloadButton = new Ext.Button({
  text: "Download",
  handler: function(){
    //download the three files here
  }
});

最佳答案

最好的方法是将文件压缩并链接到该文件:

可以在这里找到其他解决方案:How to make a link open multiple pages when clicked

声明如下:

HTML:

<a href="#" class="yourlink">Download</a>

JS:

$('a.yourlink').click(function(e) {
    e.preventDefault();
    window.open('mysite.com/file1');
    window.open('mysite.com/file2');
    window.open('mysite.com/file3');
});

话虽如此,我还是会继续压缩文件,因为此实现需要 JavaScript,有时也可能会被阻止为弹出窗口。

关于javascript - 单击按钮时如何让用户下载多个文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18451856/

相关文章:

html - CSS - 如何按垂直从上到下而不是从左到右对内联 block 进行排序?

regex - Apache 多重重写规则

Ajax:从同一服务器但不同端口加载数据

javascript - 如何自动检测数组中的值并从另一个数组设置背景颜色

动态加载后未调用 JavaScript 函数

Javascript - 从 DOM 检索数据

css - DIV 在 FireFox 中未正确对齐

javascript - 使用指令 Angular JS 动态更改文本的颜色

Jquery datepicker 插件仅适用于第一个文本框,不适用于第二个

java - 组织.apache.thrift : Invalid method name: 'authenticate'