I am working with file upload to the server using HTML tag:
<input type="file">
When I click on the browse button it shows me a file open dialog. Can I filter the files by passing the extension filter to that dialog? Like we can do in .Net framework's file open dialog by passing some thing like:
Text files *.txt|.txt
Using this filter we can only open .txt
files. Other files not shown to the user. Is there any option for this dialog?
Standard
Actually in HTML5 you can set the
accept
attribute so now this is possible! The W3C standard states:Accepted values [Full list in Wikipedia]
Just pass a valid MIME type to the attribute for example:
audio/*
video/*
video/ogg
image/*
image/jpg
image/bmp
Example code
No you can't do this with the plain
type="file"
input. You could use some Flash upload controls though that allow you to achieve this.Here is a piece of code that I came up with when I was in need of filtering some of the file types:
Accept attribute supports multiple files comma separated.
I don't think you can edit this dialog options, but you can validate the file after the user select it.
tO edit the dialog, I remember that you can do that by a flash or Silverlight uploaders, such as swfUpload.