2013-03-07 4 views
-1

Привет У меня есть обычная кнопка 2 под названием Обзор и импорт. У меня также есть тип ввода в виде текста. Мой вопрос, как я могу просмотреть и выбрать запись и место во входном типа текстаПользовательская кнопка для загрузки флага

Пожалуйста посоветуйте

<input type="button" id="btnBrowse" value="Browse" onclick="document.getElementById('fileID').click(); return false" style="height:31px; font-size:14px; background-color:#3399FF" class="k-button" /> 
     <input type="submit" id="btnSubmit" value="Import" style="height:31px; font-size:14px; background-color:#3399FF" class="k-button" /> 
     <input type="text" id="fileName" class="file_input_textbox" readonly="readonly"> 
+0

Не программируйте элемент ввода файла. Похоже, вы пытаетесь это сделать здесь. Вы столкнетесь с исключениями безопасности в IE при попытке отправить файл на сервер через js. –

ответ

1

Однако вы можете настроить практически любой другой HTML элемент. Вот полное решение:

<input id="btn" type="file" style="display:none;" onchange="document.getElementById('file').value=this.value.substring(this.value.lastIndexOf('\\')+1);"> 

<input id="file" type="text" style="width:200px;"> 

<input type="button" onclick="document.getElementById('btn').click();" value="click me" /> 
+0

спасибо. это то, что я хочу – Supermode

+0

Это, как правило, плохой совет. Вы никогда не должны программно запускать элемент входного файла. Если вы это сделаете, а затем отправьте файл на сервер с помощью javascript, IE выбросит исключение безопасности. Различные версии других браузеров также могут помешать этому. Единственный безопасный способ стилизации ввода файла - через CSS, как я уже упоминал в своем ответе. –

+0

ой, ради пита, кто сказал, что мы отправляем через javascript? кнопка отправки будет работать здесь очень хорошо. Иногда самый простой ответ на самом деле самый лучший. – iGanja

0

вы можете использовать

<input type="file"/> 
+0

да. но я не могу настроить кнопку обзора. – Supermode

+0

нет, вы не можете настроить кнопку просмотра типа ввода = «файл» – iGanja

+0

@iGanja Да, вы можете. Сделайте быстрый поиск по SO для деталей. Это FAQ. –

1

Конечно, вы можете стилизовать кнопку ввода файла. Это было рассмотрено снова и снова, и снова на SO. Например, Labeling file upload button.

+1

На самом деле ответ (ссылка на ссылку Рэя): Обычно он предоставляется браузером и его трудно изменить, поэтому единственным способом его использования будет взлом CSS/JavaScript. – Ulflander

+0

@ Ulflander Это правильно, но я бы не сказал, что это сложно изменить. Наверное, это все относительно. EDIT: Я предполагаю, что вы ссылались на CSS/JS, необходимые для стилизации кнопки. –

+1

Это была цитата, но вы правы, «тяжелая» часть - это взломать ее :) – Ulflander

Смежные вопросы