Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Button to show choose a file to upload dialog box

Instead of using an input type="file" html tag, is it possible to bring up a choose a file to upload dialog box by clicking a input type="button"? Then when a file is selected from the choose a file to upload dialog box, the file path gets inserted into a regular html input type="text" tag?

I've seem that gmail does something similar but not with buttons and text inputs, they simply have a link add file or something like that. When that link is clicked, it shows the select file(s) to upload by mail.google.com dialog box. When a file is clicked, the file name is shown on the screen.

How are they doing that?

like image 413
oshirowanen Avatar asked Jan 23 '12 16:01

oshirowanen


2 Answers

<input type="file" style="display:none;" id="inputfile"/>
<a href="javascript:document.getElementById('inputfile').click(); ">try this</a>

Try this one. I think it is useful.. :)

like image 155
Datz Me Avatar answered Sep 16 '22 19:09

Datz Me


I think most browsers have this locked down for security purposes. Buttons and text boxes can be manipulated via JavaScript. File input boxes cannot, and for good reason; imagine if a javascript could open a dialog, set the path to a sensitive file on your system, then simulate the button click to download the file!


By the way, if you are looking to style it, perhaps this would work: http://www.quirksmode.org/dom/inputfile.html

like image 44
Sam Avatar answered Sep 18 '22 19:09

Sam