html5文件输入始终接受“未知”文件类型

前端之家收集整理的这篇文章主要介绍了html5文件输入始终接受“未知”文件类型前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在编写Web应用程序,需要用户选择csv文件.但是,由于要求用户拥有带有多个后缀的文件,因此通常会有多个具有相似名称文件,而其中只有一个是.csv.问题是accept =“.csv”只能部分工作 – 它允许用户通过csv进行过滤,但默认情况下不会按未知文件类型进行过滤
<fieldset name="inputForm">
  <legend>Input</legend>

  <label>Input file:</label>
  <input name="inputFile" type="file" accept=".csv">
</fieldset>

我也试过accept =“text / csv,.csv”,但它没有改变任何东西.

结果:

用户可能会意外选择.txt文件或.png之一,这会导致应用程序因输入文件格式错误而出现故障.用户可以选择仅使用CSV进行过滤或仅选择“未知”过滤,但我更喜欢将CSV仅作为默认过滤器,因为很明显没有人会切换文件过滤选项,所以实际上它是无用的……

解决方法

不幸的是,这是操作系统行为,不在浏览器的范围内. accept属性主要是为了便于在前端使用而不是真正的验证.我建议使用JavaScript或服务器端验证来确保所选文件是所需的正确mime类型.

猜你在找的HTML5相关文章