2013-04-23 4 views
-1

Когда мы загрузив файл в формате HTML в основном мы пишемКак загрузить файл в javaScript?

<input type="file" /> 

и этот код дают ChooseFile кнопку, no file chosen

Но то, что я хочу, чтобы создать гиперссылку и по нажатию на гиперссылку для его работы как вход type="file" типа - например:

<a href="#" >ChooseFile</a> 

какие-либо предложения?

+2

вы можете сделать это с помощью html5, или вы можете использовать любой плагин для загрузки, Google, и вы найдете хорошие плагины. –

ответ

1

я думаю, что это поможет вам ..

<!DOCTYPE html> 
    <html> 
    <body> 

    <p>Click on one of the text labels to toggle the related control:</p> 

    <div> 
     <a href='#UPLOAD' >Upload a file</a> 
     <input type='file' name='file1' 
      style='cursor:pointer; opacity:0.01; alpha(opacity=1); position:relative; z-index:200; left: -10em; margin:-0.3em;' /> 
    </div> 

    </body> 
    </html> 
1

Не думайте, что вы можете стиль в = кнопку входного файла за пределы определенного предела,

проверить эти ссылки

http://www.quirksmode.org/dom/inputfile.html

Style input type file?

Или Вы можете попробовать готовый плагин, чтобы сделать работу для вас

https://github.com/blueimp/jQuery-File-Upload

0

Лучше всего использовать хорошо документированный трюк, будет в конечном счете включать скрытие элемента ввода файла в качестве дочернего элемента div, разработанного в соответствии с вашими потребностями. Я говорю, что это хорошо документировано, так как это очень часто задаваемые вопросы здесь, на SO, и распространяется на многие другие сайты и сообщения в блогах в Интернете.

Не используйте javascript для ввода элемента ввода файла. Вероятно, вы столкнетесь с ограничениями безопасности, установленными браузерами. Некоторые браузеры могут даже не допускать этого. Другие, такие как IE, будут вызывать ошибку безопасности при попытке отправить файл через javascript после использования javascript, чтобы щелкнуть элемент ввода файла.

Если вы хотите избежать повторного создания колеса, вы можете использовать предварительно созданную библиотеку, которая обрабатывает сложность загрузки файлов в разных браузерах. Я рекомендую Fine Uploader. Он хорошо поддерживается, достаточно активен и быстро развивается. Полное раскрытие информации: Я являюсь основным разработчиком этой библиотеки.