Solved

Input File Accept Tag

Posted on 2006-11-28
8
7,586 Views
Last Modified: 2013-11-19
Hi guys,

How would I change this tag so that it only accepts *.doc files?

<input name='myFile' type='file' />
0
Comment
Question by:Cyber-Drugs
  • 2
  • 2
  • 2
  • +2
8 Comments
 
LVL 10

Expert Comment

by:ADSLMark
ID: 18029185
On the bottom of this page this is explained:

http://www.cs.tut.fi/~jkorpela/forms/file.html

There is a default tage accept="" for the <input> tag, but i tried it with FF and IE and both did not work... So you probably need javascript.. which is explained on the website i gave you..

Mark
0
 
LVL 12

Expert Comment

by:enachemc
ID: 18029209
<input name='myFile' type='file' accept="image/*"/>

but this does not work on all browsers: http://www.cs.tut.fi/~jkorpela/forms/file.html#filter
0
 
LVL 12

Expert Comment

by:jessegivy
ID: 18029436
Welll....  A solution that doesn't work on all browsers isn't really a solution is it?  The javascript validation is a good idea, you could just parse the last three letters of the filename and then not submit the form if it isn't a .doc file, showing an alert box prompting them to select a word document instead.  Might be friendly to display the file extension they're using that's being rejected as well.

I'm baffled that the accept attribute doesn't work, it really pisses me off to be honest, I mean what's the point if it doesn't do what it's supposed to.   ...anyway, the javascript would look like this:

<html>
<head>
<title>Validation Example</title>
<script type="text/javascript">
function validateForm()
{
   var io=document.getElementById("fileIO");
   if(io.value.substring(io.value.length-3)!="doc")
   {
       alert(io.value.substring(io.value.length-4)+" is not a valid file extension.  The file must be a MS Word Document(.doc)");
       return false;
   }
   //if(another element isn't valid)
   //return false;
   //etc....
}
</script>
</head>
<body>
<form onsubmit="validate();">
<input type="file" id="fileIO" />
</form>
</body>
</html>

...please do note that there is no script access given to the value attribute of an input type="file" element.
0
Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
LVL 12

Expert Comment

by:jessegivy
ID: 18029446
...sorry, that last line was just to say that the value attribute is readonly, you just can't change it in script.
0
 
LVL 4

Author Comment

by:Cyber-Drugs
ID: 18045718
At the moment I am already doing a check to see if the selected file is *.doc or not, but what I am really after is a way to manipulate the form to only allow users to select *.doc files...
0
 
LVL 19

Accepted Solution

by:
DreamMaster earned 500 total points
ID: 18053722
Hi Cyber-Drugs,

What you are asking would require to change the way the input type="file" works. The dialog box that opens is totally beyond your control, so there's no way to have the user only be able to select .DOC files. The only way to block other files is to check that using javascript or server side code. I know that is not what you want to hear, but it's true nonetheless.

Regards,
Max.
0
 
LVL 4

Author Comment

by:Cyber-Drugs
ID: 18053770
Hi Max,

I just wanted to know if it was possible and if so, how I could do it. If it's not possible, that's fine, I may just create a Flash version, which gives me full control.

Cheers!
0
 
LVL 19

Expert Comment

by:DreamMaster
ID: 18053871
Glad to have been helpful :)

Regards,
Max.
0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Wordpress plugins not working in html 3 38
How do I pull the base url for use in html links 7 31
Insert Button on a table 16 37
How to create a table with buttons 3 21
This article discusses four methods for overlaying images in a container on a web page
This article explains how to prepare an HTML email signature template file containing dynamic placeholders for users' Azure AD data. Furthermore, it explains how to use this file to remotely set up a department-wide email signature policy in Office …
In this tutorial viewers will learn how to code links for mobile sites that, once clicked, send a call or text to a specified number. For a telephone link (once clicked, calls a number), begin with a normal "<a href=" link tag. For the href, specify…
This tutorial will teach you the core code needed to finalize the addition of a watermark to your image. The viewer will use a small PHP class to learn and create a watermark.

839 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question