2011-04-15 35 views
2

由于本机IE7(和一些其他浏览器,尚未检查,确切地说)不使用<input multiple="" />参数,我很想知道什么是...最兼容(根据偏好,是,是)不同的解决方案,一个输入字段,多个文件上传。最兼容的解决方案,用于多文件上传输入

如果在解决方案中没有涉及JavaScript,那就太好了,但我总觉得有这种奇怪的感觉,那是不可能的 - 如果我错了,就纠正我。

提前致谢!

回答

2

允许多文件上传的大多数浏览器兼容的纯HTML方法是简单地有多个:

<input type="file" /> 

您也可以使用Java或Flash上​​传 - 但这些可能与JavaScript不兼容。

JavaScript哪个优雅地退化可能是您最好的选择,退房Valum's File-Uploader。该库允许您使用:

  • 如果浏览器支持,则通过上载表单元素上载多个文件。
  • 如果浏览器支持,则拖放文件上传
  • 如果浏览器禁用JavaScript,则一直降低到HTML输入表单元素。

这是非常好的做法,开发最新的浏览器,同时支持旧版浏览器(而不是其他方式)。如果用户使用的是旧版浏览器或者没有启用JavaScript,那么无论您做什么,多文件上传都会很痛苦。

+0

我正在开发最新的浏览器,只是想知道是否有可行的解决方案,无论用户使用什么浏览器都可以工作。 – jolt 2011-04-15 13:03:32

1

我们的世界尚未赐给我们这样的工具/控制...

但我认为你会得到,如果你不希望使用任何客户端技术(如最佳javascript或Flash),就是让用户上传一个带有普通POST的文件,然后以某种方式(可能在你的会话中)记住用户上传的文件,或者只是将它们保存到数据库中。

所以该过程将是:

  1. 用户选择一个文件并上传;
  2. 你显示图像,并询问他们是否想要上传另一个文件; 要上传另一个文件;
  3. 然后你给他们一个选择去下一页 或做一些行动。

可能不是解决这个问题的最好方法,但它应该可行。

然后,如果你愿意使用Javascript或Flash,那里有大量的脚本可以让你上传多个文件。那么也许找一个只给出一个输入并填充选定图像的列表?

只是我的2美分...

相关问题