【问题标题】:Upload specific files only仅上传特定文件
【发布时间】:2013-06-12 11:42:46
【问题描述】:

我想限制用户仅上传特定文件。我知道这可以通过表单操作值导致的 php 脚本来完成,但这不是我想要的。

当用户在使用该行后选择文件时:

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

他有一个选择所有文件的选项

我只想将其更改为特定的扩展。

【问题讨论】:

标签: html


【解决方案1】:

您可以使用accept 属性。例如,如果您想限制所有图像文件:

<input type="file" accept="image/*" />

您还可以指定可能的类型列表:

<input type="file" accept="image/*,video/*" />

不用说,不支持此新属性的旧版浏览器的行为将与您的屏幕截图中显示的完全相同,并且完全忽略此属性,您对此无能为力。

在所有情况下,您都应该对正在上传的实际文件类型提供服务器端验证,并且永远不要依赖客户端来确保这一点。

【讨论】:

  • accept 属性至少从 HTML 3.2 开始就存在了。
  • @Quentin,好点,我不知道。旧的用户代理在遇到它时会如何表现?旧浏览器是否支持此功能?很抱歉询问,但我不再有这样的浏览器可供测试。
  • 它确实将其更改为“仅图像”,但我可以选择再次将其更改为“所有文件”并选择我想要的任何内容。
  • @ImriPersiado,这是您在客户端上可以获得的最好的。抱歉,您将不得不忍受这种情况,或者编写您自己的 Web 浏览器,它的行为会有所不同。或者,您可以使用一些 Flash 插件来限制这一点。
  • 好的,我明白了。谢谢你们的cmets。
猜你喜欢
  • 1970-01-01
  • 2015-10-26
  • 2018-06-15
  • 1970-01-01
  • 1970-01-01
  • 2018-11-19
  • 2015-11-29
  • 1970-01-01
  • 2020-08-09
相关资源
最近更新 更多