如何以HTML格式指定文件列表?

时间:2011-05-29 19:52:44

标签: html html-input

在应用程序中使用<input type="file">时,您将获得文件选择对话框,其中所有文件都是默认文件。

有没有办法为此指定文件类型?例如,是否可以选择“.txt”文件?

3 个答案:

答案 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)

验证时,您可以检查文件类型,也可以使用on change事件来确定文件类型。

<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表单中放置什么内容,都可以发布任何“垃圾”垃圾,因此请确保验证服务器端是否已发布正确的文件类型。