Подтвердить что ты не робот

Как заставить ссылку действовать как ввод файла

У меня есть ссылка,

<a id="upload-file">Upload your photo</a>

И если щелкнуть, я хочу, чтобы он выступал в качестве входного файла для просмотра

<input id="upload-file" type="file"/>

Как бы это сделать?

4b9b3361

Ответ 1

HTML

<input id="upload" type="file"/>
<a href="" id="upload_link">Upload your photo</a>​

CSS

#upload{
    display:none
}

JS

$(function(){
    $("#upload_link").on('click', function(e){
        e.preventDefault();
        $("#upload:hidden").trigger('click');
    });
});

DEMO.

Ответ 2

после этого будет решена проблема

HTML

<input id="upload-file" type="file"/>
<a id="fileupload">Upload your photo</a>

CSS

#upload-file{
    display: none;
}​

JS

$("#fileupload").click(function(){
    $("#upload-file").click();
});​

http://jsfiddle.net/WXBKj/

Ответ 3

У вас может быть скрытый тег <input>, который вы можете вызвать $('#upload').click() для имитации щелчка.

Или вы можете иметь скрытый тег <input> с идентификатором, а затем просто добавить атрибут метки в свою ссылку.

Ответ 4

Редакция:

Смотрите эту демонстрацию: http://jsfiddle.net/rathoreahsan/s6Mjt/

Jquery:

$("#upload").click(function(){
    $("#upload-file").trigger('click');
});

HTML

<a href="javascript:void(0)" id="upload">Upload your photo</a>
<input id="upload-file" type="file"/>

CSS

#upload-file {
    display:none;
}

ИЛИ

Вы можете использовать красивые плагины, как это:

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