Max*_*yko 5 javascript firefox dom
我需要可靠地检测页面上单选按钮/复选框的状态更改,以便观察表单是否被修改.现在,这是一个完全独立的脚本,我无法修改控制表单的任何内容.
现在,我只能看到两种方法:
onchange 事件处理程序,它有助于文本框,textareas和选择,但不会触发复选框/单选按钮onclick 事件处理程序,这是不可靠的,因为用户经常使用热键来更改这些元素的值.我在这里错过了什么?有没有办法可靠地检测复选框是否已选中/未选中?
更新:正如你们所指出的那样,更改事件实际上是在复选框/单选按钮上被触发,尽管w3schools说它仅用于文本输入
但是,我的问题是,复选框/单选按钮的值是通过脚本中的setAttribute设置的,在这种情况下,事件不会被触发.
在这种情况下我能做些什么吗?
请参阅: http: //www.quirksmode.org/dom/events/change.html。
它说所有主流浏览器都支持更改事件,但 IE 的实现有错误。
当复选框或单选框模糊时(而不是激活时),IE 会触发该事件。这是一个严重的错误,需要用户采取另一项操作,并阻止基于复选框和单选按钮上的更改事件的一致的跨浏览器界面。
我认为你可以用这个技巧克服 IE 的错误。元素聚焦时模糊()!(使用类似于$('input[type=radio]').focus(function(){$(this).blur();});jQuery 的东西或使用纯 javascript)
| 归档时间: |
|
| 查看次数: |
3763 次 |
| 最近记录: |