为什么.click()这样的javascript语句在firefox里面无效?

KennyLong 2005-12-16 05:42:33
这样一句javascript代码,在ie里面很正常,在firefox和oprea里面为什么无效?
document.getElementById('testinput').click();
testinput是一个file文件浏览控件。
...全文
1083 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
KennyLong 2005-12-26
  • 打赏
  • 举报
回复
不要紧,感谢你的回复。
cvpc 2005-12-26
  • 打赏
  • 举报
回复
果然是这样,是我理解错了楼主的意思了,见笑!
KennyLong 2005-12-26
  • 打赏
  • 举报
回复
楼上说的我知道,我只是要通过这个方法可以在客户端方便的取得一个本地文件的绝对路径,并不是想要上传文件。
meizz 2005-12-26
  • 打赏
  • 举报
回复
“这样一句javascript代码,在ie里面很正常,在firefox和oprea里面为什么无效?
document.getElementById('testinput').click();
testinput是一个file文件浏览控件。”

你要操作的目标是一个 type="file" 的文件浏览框,这个玩意用脚本去触发是没有用的,
<form name=form1>
<input type=file name=ff id=ff style="display: none"
onChange="document.form1.f1.value=this.value">
<input name=f1 readonly><input type=button
value=浏览文件 onclick="document.form1.ff.click()">
</form>
比如说这个代码在IE里表面上是正常的,但是其实这样写出来的代码根本上传不了文件,即在IE里用脚本触发文件浏览框的click()所选择的文件根本无法上传。不要再去花这个歪脑筋了。
KennyLong 2005-12-25
  • 打赏
  • 举报
回复
感谢“cvpc(一回)”的代码,但你这只是响应控件上的按键,并不是直接call控件的onclick事件,感觉是两回事。例如以下代码就不行:

<input type="text" id="t1" style="overflow:visible" value="初始值" onclick="javascript:alert('hehe');">
<input type="button" id="btn" value="click" onclick="javascript:document.getElementById('t1').click();" />
cvpc 2005-12-23
  • 打赏
  • 举报
回复
错了,忘加按钮了

<script type="text/javascript">
function c(){
document.getElementById("t1").value = "click";
}
</script>
<input type="text" id="t1" style="overflow:visible" value="初始值" onkeyup="if(event.keyCode == 13){document.getElementById('btn').click();}">
<input type="button" id="btn" onclick="c()" value="click" />
cvpc 2005-12-23
  • 打赏
  • 举报
回复
谁说 firefox 不支持click()?

<script type="text/javascript">
function c(){
document.getElementById("t1").value = "click";
}
</script>
<input type="text" id="t1" style="overflow:visible" value="初始值" onkeyup="if(event.keyCode == 13){c();}">
输入数据,回车看看!
KennyLong 2005-12-22
  • 打赏
  • 举报
回复
不行啊,firefox也不支持fireEvent
surfchen 2005-12-18
  • 打赏
  • 举报
回复
没戏
fdchris 2005-12-18
  • 打赏
  • 举报
回复
用fireEvent试试.这种写法比较正规.应该在FireFox里有效.
上海程序员3 2005-12-18
  • 打赏
  • 举报
回复
FireFox不支持,你要么放弃FireFox,要么放弃这种写法。
KennyLong 2005-12-16
  • 打赏
  • 举报
回复
upupup~~~~~~~~
KennyLong 2005-12-16
  • 打赏
  • 举报
回复
upup~~~~~~
KennyLong 2005-12-16
  • 打赏
  • 举报
回复
真的没戏吗?确定?
gu1dai 2005-12-16
  • 打赏
  • 举报
回复
估计是触发不了。
KennyLong 2005-12-16
  • 打赏
  • 举报
回复
由于安全考虑???不要去触发?还是触发不了?
孟子E章 2005-12-16
  • 打赏
  • 举报
回复
由于安全考虑,不要用程序去触发

87,925

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧