【发布时间】:2011-08-02 13:35:26
【问题描述】:
我需要可靠地检测页面上单选按钮/复选框的状态变化,以便查看表单是否被修改。现在,这是一个完全独立的脚本,我无法修改任何控制表单的内容。
目前,我只能看到两种方法:
-
onchange事件处理程序,有助于处理文本框、文本区域和选择,但不会触发复选框/单选按钮 -
onclick事件处理程序,不可靠,因为用户经常使用热键来更改这些元素的值。
我在这里缺少什么?有没有办法可靠地检测复选框被选中/取消选中?
更新:正如你们所指出的,change 事件确实是在复选框/单选按钮上触发的,尽管 w3schools 说它仅适用于text inputs
然而,我的问题原来是复选框/单选按钮的值是通过脚本中的 setAttribute 设置的,在这种情况下,事件不会被触发。
在这种情况下我能做些什么吗?
【问题讨论】:
-
复选框和单选按钮确实会触发
onchange事件,问题是 IE 在复选框或单选按钮失去焦点之前不会触发事件。
标签: javascript firefox dom