【发布时间】:2012-06-25 18:50:01
【问题描述】:
有没有一种简单的方法可以在单选按钮上附加“取消选择”事件?似乎只有在选择按钮时才会触发更改事件。
HTML
<input type="radio" id="one" name="a" />
<input type="radio" id="two" name="a" />
JavaScript
$('#one').change(function() {
if(this.checked) {
// do something when selected
} else { // THIS WILL NEVER HAPPEN
// do something when deselected
}
});
jsFiddle
【问题讨论】:
-
用户无法取消选择收音机...您要做什么?
-
用户可以取消选择一个单选但选择另一个单选按钮。
-
听起来收音机控制错误……或者只是不了解您的期望。所有的答案基本上都是你写的东西的衍生品,因为没有事件可以利用
-
@未定义 - 希望在选择变化时,先得知道先前选择了该组中的哪个单选按钮并不合理。当只有两个收音机时有点微不足道,因为显然它总是不只是被点击,但是在一个组中拥有两个以上的收音机是很常见的......
-
一个收音机可以被取消选择。收音机
onchange的奇怪之处在于它不是“onChange”——它是“onChangeToTrue”。除了装饰/表示之外,它们当前的实现与<select /> + <option />没有什么不同。从逻辑上讲,当另一个按钮被选中时,它会改变!!!为什么不调用onchange?相反,应该使用target.checked === false调用组中每个无线电的每个处理程序,但刚刚选择的除外。
标签: javascript jquery