2011-04-02 202 views

回答

18

这取决于浏览器。较新版本的Firefox和Chrome支持这个,因为他们开始实施HTML5规范。这是语法:

<input type="file" multiple=""/> 

火狐> = 3.6,铬> = 2时,Safari> = 4支撑多个文件输入。

对于旧版本的浏览器,唯一不错的解决方案是Flash或JavaScript插件。 这里是jQuery的上传者(一些支持多个文件)一个很好的资源:http://creativefan.com/10-ajax-jquery-file-uploaders/

+1

你的意思是flash或java插件? AFAIK的JavaScript不会帮助你选择多个文件与1个文件元素。 – Stann 2011-05-21 14:17:15

+0

Stann:只要前一个有一个值,就会创建一个新的文件元素。 – Konerak 2012-09-04 09:45:06

-1

没有html/javascript解决方法。你将不得不看看闪光或Java能够做到这一点。

+0

再次jQuery的uploadify :) – ajsie 2010-01-15 12:54:30

+0

检查。它使用闪存..... – 2010-01-15 13:38:47

1

多次使用文件输入表单元素,给它一个不同的名称,并在一个页面上有多个上传字段。无需学习其他任何东西。

1
  1. PHP是后端,PHP是不是制约你只用“一”上传时间
  2. HTML/JavaScript的是前/中端引起的事限制。 (所以添加HTML您的问题标签)
  3. 如果使用Flash(AS = 的ActionScript),你仍然可以有PHP作为后端,如处理器,处理上传的文件。
-1

正如其他人所说,你必须使用Flash来获取多个上传。上传的替代方案是SWFUpload

7

在HTML5中,你可以设置<input type="file">multiple attribute。这适用于支持HTML5的浏览器。

<input type="file" name="upload" multiple="multiple" /> 

在HTML4你最好的选择是Flash或Java小程序。有第三方库可用,如Uploadify,,JUploadJumpLoader

+0

+1为JumpLoader ...我一直在寻找像它一样的东西!谢谢! – Dragn1821 2011-04-12 19:48:49

-1

Flash是除HTML5以外的唯一选项。

+0

和Java小程序。但闪光灯更好,因为大多数人已经安装了它。 – Stann 2011-05-21 14:29:58

2

我肯定会在这一点上跟新的HTML5“多个”属性:

<input type="file" name="upload[]" multiple="multiple" /> 

唯一可行的选择是Flash插件如SWFUpload的。

然而 - 有使用闪光灯上传多个prublems,主要的福尔我是饼干错误:

FLASH插件没有正确发送的cookie。每个浏览器都有它自己的cookie存储器。即使您使用Google Chrome,FLASH也会始终发送来自IE的Cookie。 - 结果是你丢失了cookies和会话。有一个解决方法 - 但它需要您发送会话ID作为GET或POST参数,这反过来使您的网站容易受到会话固定。

相关问题