Есть file input, нужно, чтобы при нажатии например на ссылку <a>Выбрать файл</a>
нажимало на input и выбирало файл. click() не во всех браузера работает, а focuc() вообще не работает, как выкрутится?
4 ответа
Можно с использыванием триггера это реализовать. Смотрите пример
-
-
Чего ж сразу не сказали? А JS использовать хоть можно? )) Тогда вот вам такой вариант– Deonis11 авг 2012 в 16:21
-
-
@ashorva, наверно... В IE5.5 не проверил, но возможно, что в нем работать не будет. Ой, бяда... Кроме него проверил в осле версий 7+, FF, Opera, Safari. Тут, как ни странно, работает.– Deonis11 авг 2012 в 16:25
И это очень хорошо, что не работает...
Принцип такой: положить поверх ссылки прозрачный input type=file, так, чтобы его координаты совпадали с границами ссылки. Получится, что клик "как бы по ссылке" будет фактически происходить на инпуте.
-
-
3Тем, что возможность автоматически засабмитить форму - стандартная и есть всегда. Объяснять, чем это может быть опасно, если input file будет поддерживать ВСЕ события?– user655011 авг 2012 в 15:24
-
-
Да, объяснять. Потому что поместить файл в этот инпут без участия пользователя всё равно не получится.– Qwertiy ♦16 сен 2015 в 18:41
чтобы при нажатии например на ссылку
<a>Выбрать файл</a>
нажимало на input и выбирало файл
Ну так и замени ссылку на label. Зачем мудрить??