Всем привет! Может кто знает, можно ли на javascript заставить <input type="file"> открыть окно выбора файла (сэмулировать клик по кнопке)?
Сам придумал, может и не правильно В IE сработало Код (Text): <input type="file" id="ff"> <input type="button" value="open" onclick="document.getElementById('ff').click()">
Например, такой код Код (Text): <div style="display: none"> <input type="file" id="ff"> </div> <input type="Text" id="tff"> <input type="button" value="open" onclick="document.getElementById('ff').click(); document.getElementById('tff').value=document.getElementById('ff').value"> позволит заменить стандартную кнопку "Обзор" на свою. Можно также использовать рисунок или ссылку. P.S. В FF этот код не сработал
Mavir http://softwaremaniacs.org/blog/2006/08 ... -controls/ Это имхо) Но не только мое) Просто, для ознакомления ссылку даю.
Я хочу сделать как правильно написал Mavir: Спасибо, Marvir, я click() пробовал, но в Mozilla & MozillaFF не работает так что вопрос открыт
Кстати, насчет Я согласен, что стандартные контролы должны оставаться стандартными, однако при открытии файла обычному пользователю более понятен интерфейс кнопки на toolbar-е, например, MSWord кнопка "Открыть" вторая слева (Ctrl+O), чем <input type="file">. Это я и хотел бы сделать, кстати с использованием скрытой формы, как в примере от Mavir.
Тут видишь, еще какой вариант - в принципе, пользователь прывык, что в ЕГО браузере файл выбирается таким именно образом... Mavir, я ж не критикую, типа - "не делайте так ваще!", я просто освещаю по возможности все стороны вопроса. Но я понял вашу идею) Если найдете универсальный способ, скажите)) vlad-net, я делал чуть по другому - по кнопке открывался скрытый div, в котором уже был input )
Горбунов Олег, Вы же не знаете точную задачу. Например, во flash нет возможности закачки файлов. Зато можно вызывать JavaScript. А вставив скрытый слой с формой и полем file можно такое организовать. Еще есть такой фактор, как заказчик. Ну хочется ему так сделать, хоть ты тресни
Как говорится: "Каждый физик должен быть в меру ленив, чтобы не делать лишней работы". Поэтому я без надобности не буду извращаться, а вставлю просто поле file, ведь так проще P.S. Я по профессии физик