我有这段代码:
<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
当用户点击图片时,选择文件窗口会让用户选择图片并将其放入隐藏文件元素中。
什么是问题?
由于
答案 0 :(得分:2)
您的问题很简单,.click()
打开文件选择器对话框并不适用于所有浏览器。我不知道有任何解决方法。
答案 1 :(得分:1)
常见的方法是将文件输入到位,但不透明度为0,实际上意味着它是隐藏的,并在其上放置自定义图像或文本。确保“浏览”按钮正好是文本/图像的位置,它将起作用 - 单击自定义文本/图像将实际单击浏览按钮。
我在某处有这样的代码,所以如果你无法实现这一点,我会搜索该代码。
答案 2 :(得分:1)
尚未支持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