2015-01-09 113 views
0

换句话说,我想允许用户一次性下载所有选定的文件(无需创建zip文件) 但我会是那个用户选择时间保存文件的位置并确认只下载一个文件(不适用于每个文件)用Asp.net一次性下载多个文件(无压缩文件)

我有一个包含服务器上文件列表的网格。 我想要实现这个目标一个多文件下载: - 用户检许多文件对电网 - 用户点击只有一次下载 一个按钮 - 下载启动和每个文件是单独下载()

我不能使用“For Each”循环来循环浏览列表以按顺序下载每个文件,因为它会导致多个弹出窗口进行下载确认。 我发现这个jQuery插件:http://biesiad.github.com/multiDownload/,但它不工作,因为我想要因为导致多个弹出窗口打开。

我看到一个旧的站点,这一功能与ActiveX做...但我希望,现在是其他方式复制这一功能...

你能帮助我吗?

无论如何,如果唯一的方法是整合一个ActiveX,有一个免费的?

回答

1

压缩是最简单的选择,因为您实际上是将用户发送到一个新的“页面”,这是zip,迫使浏览器启动下载过程。

其他的方法可以做到这一点:

  1. 一些非HTML位(的Java,ActiveX,Silverlight中,闪存)添加到要处理的下载管理
  2. 打开多个“页面”的页面,一个每个文档
  3. 使用HTML5

既然你不喜欢选项2(JQuery的方式),你很可能坚持与1号或3。 #1的缺点是用户的浏览器可能不支持该技术。

  • 用户可能有Java的了,所以Java不是一个确保消防选项
  • 用户拥有的ActiveX默认关闭的,它是不通用(列表中的IMO最坏的选择)
  • 用户可能没有安装Silverlight(幸运的是,它会启动安装程序,但如果他们拒绝,你必须有另一种方式 - 也许“安装Silverlight或我将打开每个文件1弹出,或我可以压缩它”)
  • 用户可能没有安装闪存(最终用户不太可能,但可能)

#3怎么样?下载在浏览器中没有得到很好的支持,所以你会失去你的观众,除非你能控制浏览器。

这里的关键是我知道的唯一方法是压缩,浏览器中嵌入额外的HTML/JavaScript编程,多个弹出窗口和HTML5下载。