已经阅读了相当多的文档,但似乎没有让这个非常基本的东西在 Chrome 中工作。
<input type="file" accept=".jpg, .png"/>
打开的对话框仅在扩展下拉列表中显示“自定义文件”。看到这个小提琴。
它似乎只适用于单个扩展规范。还尝试使用一些 mime 类型但无济于事。
我同意@Eugenio 的评论。您可以在客户端和服务器端验证它。
如果您使用
accept="image/*"
代替 Custom Files
它将显示 Image Files
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()"/>