Javascript код работает в IE, но не работает в Firefox? - PullRequest
0 голосов
/ 29 ноября 2010

У меня есть этот код:

<a href="javascript:document.forms['form1'].student_pic.click()">
    <img src="images/mypic.png" alt="" width="161" height="29" border="0" style="margin-top:10px" />
</a>
<input style="display:none" type="file" name="student_pic" id="student_pic" />

Этот код успешно работает в IE, но не работает в FF.

Конечно, на моей странице есть форма под названием form1

Когда пользователь щелкает изображение, окно выбора файла позволяет пользователю выбрать изображение и поместить его в скрытый элемент файла.

Что такое проплэм?

Спасибо

Ответы [ 3 ]

2 голосов
/ 29 ноября 2010

Ваша проблема заключается в том, что .click(), чтобы открыть диалоговое окно выбора файлов, работает не во всех браузерах.Я не знаю никакого обходного пути.

1 голос
/ 29 ноября 2010

Пока не поддерживается в Gecko:

Gecko 2.0 note(Firefox 4) 

Starting in Gecko 2.0 , calling the click() method on an <input> element of 
type file opens the file picker and lets the user select files.

от https://developer.mozilla.org/en/HTML/Element/input#File_inputs

1 голос
/ 29 ноября 2010

Распространенным способом является ввод файла на месте, но с непрозрачностью 0, что фактически означает, что он скрыт, а поверх него размещается ваше пользовательское изображение или текст. Убедитесь, что кнопка «просмотр» находится именно там, где находится ваш текст / изображение, и она будет работать - щелчок по пользовательскому тексту / изображению фактически приведет к нажатию на кнопку просмотра.

У меня где-то есть такой код, поэтому, если вы не сможете этого добиться, я буду искать этот код.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...