html - 输入类型=文件 "Accept"属性在 Chrome 中不起作用?

标签 html file google-chrome input file-extension

<分区>

已经浏览了相当多的文档,但似乎并没有让这个非常基本的东西在 Chrome 中工作。

<input type="file" accept=".jpg, .png"/>

打开的对话框仅在扩展下拉列表中显示“自定义文件”。看这个Fiddle .

enter image description here

它似乎只适用于单个扩展规范。也尝试使用一些 mime 类型无济于事。

最佳答案

我同意@Eugenio 的评论。您可以在客户端和服务器端对其进行验证。

如果您使用 accept="image/*" 而不是 Custom Files,它将显示 Image Files

enter image description here

 function validate() {
  var fileName = document.getElementById("fileType").value;
  var dot = fileName.lastIndexOf(".") + 1;
  var extFile = fileName.substr(dot, fileName.length).toLowerCase();
  if (extFile == "jpg" || extFile == "jpeg") {
   //accepted
  } else {
   alert("Only jpg and jpeg image files allowed!");
  }
 }
<input type="file" id="fileType" accept="image/*" onchange="validate()"/>

关于html - 输入类型=文件 "Accept"属性在 Chrome 中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49154550/

相关文章:

jquery - 锁定 block 到滚动元素的底部

javascript - 将 javascript var 从 webview 获取到 android var

C# 文件异常 : cannot access the file because it is being used by another process

c - 管理日志文件大小

c++ - 计算文件中每个字母的出现次数?

javascript - 无法在 'replaceState' 上执行 'History' <local_URL> 无法在源为 'null' 的文档中创建

jquery - 溢出问题 :hidden on mouseover in Chrome

jquery - 单击按钮复制到剪贴板

javascript - 获取 Chrome 的当前语言环境

javascript - 将鼠标悬停在段落上时如何更改图像的 src?