使用 <input type=“file”> 时的图像格式下拉菜单?

Posted

技术标签:

【中文标题】使用 <input type=“file”> 时的图像格式下拉菜单?【英文标题】:Image format dropdown when using <input type=“file”>? 【发布时间】:2017-02-24 06:31:18 【问题描述】:

我想限制当用户单击 html 元素中的“浏览”按钮时可以从本机操作系统文件选择器中选择的文件类型。我觉得这是不可能的,但我想知道是否有解决方案。我想只保留 HTML 和 javascript;请不要使用 Flash。

目前,我有&lt;form:input path="image" type="file" accept="image/*" style="display: none;"/&gt;

它显示如下,

但我需要像我们在 mspaint 中一样显示。

【问题讨论】:

您必须注意,操作系统有不同的方式来呈现文件输入的下拉菜单,因此可能没有使用本机文件输入元素的单一跨平台解决方案。 我认为这个链接可以帮助你:***.com/questions/651700/… 弹窗是原生的,这意味着它属于操作系统,不能被浏览器/javascript更改。 【参考方案1】:

你只能做这样的事情

<form:input path="image" type="file" accept="image/gif, image/jpeg, image/png" style="display: none;"/>

但这不会为您提供所需的列表。

请注意,这仅向浏览器提供关于向用户显示哪些文件类型的提示,但这很容易绕过,因此您也应该始终在服务器上验证上传的文件。

【讨论】:

好的,知道了。然后我会放弃它,并单独限制 image/* 。

以上是关于使用 <input type=“file”> 时的图像格式下拉菜单?的主要内容,如果未能解决你的问题,请参考以下文章

<input type="file" /> 的 HTML 助手

input type=file上传控件老问题

如何重置 <input type = "file">

将默认值放入 <input type=file....>

css-input[type='file']光标效果

使用 Javascript 上传文件将风格化 <input type='file' > 的“拒绝访问”错误返回到按钮