在应用程序中使用<input type="file">
时,您将获得文件选择对话框,其中所有文件都是默认文件。
有没有办法为此指定文件类型?例如,是否可以选择“.txt”文件?
答案 0 :(得分:3)
这很简单。您所要做的就是添加一个accept
属性,用于定义您希望允许的文件扩展名。
<input type="file" accept="image/gif,image/jpeg">
该输入仅允许gif和jpegs,但您可以允许任何以逗号分隔的列表。
请参阅: http://www.cs.tut.fi/~jkorpela/forms/file.html#filter http://www.w3schools.com/tags/att_input_accept.asp
编辑:当然,您也可以通过选择文件后检查文件类型来执行此操作,但是您不想在用户选择文件之前检查吗?
答案 1 :(得分:1)
<input name='upload' id='file' type='file' />
Javascript部分
var file = document.getElementById('file');
if (file.value.test(/(\.txt)|(\.jpg)/gi)) { // case insensitive
// then validate
}
在这种情况下,只接受txt或jpg。但是当然你必须在服务器端重新验证因为javascript很容易被绕过
答案 2 :(得分:0)
是的,使用accept
属性。
无论您在HTML表单中放置什么内容,都可以发布任何“垃圾”垃圾,因此请确保验证服务器端是否已发布正确的文件类型。