【问题标题】:How do i allow the user to select more than one file for upload?如何允许用户选择多个文件进行上传?
【发布时间】:2010-10-10 15:45:20
【问题描述】:

Gmail 刚刚发布了对其界面的更新,允许用户使用 CTRL 按钮选择多个文件进行上传。他们是怎么做到的?您可以在此处阅读有关新功能的信息并查看屏幕截图:

http://gmailblog.blogspot.com/2009/02/updates-to-attachments-multi-select-and.html

【问题讨论】:

    标签: html upload gmail


    【解决方案1】:

    您需要找到基于 Flash 的解决方案,就像 Google 对 Gmail 所做的那样。你可以试试这个提供的 jQuery 插件:jQuery File Upload Plugin

    【讨论】:

      【解决方案2】:

      Adobe Flash Player.

      这是我使用的一个很好的库:SWFUpload

      当然,这是一个 JavaScript 库,而不是 jQuery 插件,因此更便于移植。

      【讨论】:

      • 感谢您的链接。我会支持你,但接受 Stiropor 的回答,因为他是第一个链接到工作库的人。
      【解决方案3】:

      看看RFC 1867它定义了如何使用多部分/混合编码通过HTTP上传文件。您可以使用 Apache Commons FileUpload 库在 Java 中执行此操作。我不知道 Google 是如何做到的,但您可以通过页面中的 JavaScript 处理来管理多项选择。

      【讨论】:

      • 您确定 Apache Commons FileUpload 允许用户使用键盘上的 CTRL 按钮从目录中选择多个文件吗?另外,如果我希望用户从同一个对话框中选择多个文件,我不确定 Javascript 是否足够。
      【解决方案4】:

      不是Gmail使用的方法,而是以下链接,结合一些jquery可以允许无限数量的文件同时上传:Link

      【讨论】:

      • 这将不允许我使用 CTRL 在上传对话框中选择多个文件。
      【解决方案5】:

      Google 没有使用 Flash,但实际上是一些聪明的 javascript(嗯,这似乎就是他们的全部内容 :-))。使用 javascript 和 css,您可以创建一个文件选择器,让用户选择要上传的文件。然后,您使用隐藏的 iframe。将表单与您的上传文件一起发布的行为以隐藏的 iframe 为目标,以便服务器成功返回的结果进入该隐藏的 iframe。使用 javascript,监视该 iframe 的文档正文以了解文件何时上传。

      此链接似乎是基本概念的一个简单示例:http://www.seemysites.net/projFolder/uploader/

      【讨论】:

      • 请再看一遍我的问题,你就会明白你的答案不正确。他们似乎在使用 flash 来允许用户使用 CTRL 来选择多个文件。
      • 感谢您指出...愚蠢的我和我的先入为主的观念。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-07-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-08
      • 1970-01-01
      相关资源
      最近更新 更多