【发布时间】:2011-07-07 19:15:03
【问题描述】:
大约一个月前,米特的问题无人回答。可悲的是,我现在也遇到了同样的情况。
http://api.jquery.com/change/#comment-133939395
情况如下:我正在使用 jQuery 来捕获单选按钮中的更改。当单选按钮被选中时,我启用了一个编辑框。当取消选择单选按钮时,我希望禁用编辑框。
启用工作。当我在组中选择不同的单选按钮时,change 事件不 被触发。有谁知道如何解决这个问题?
<input type="radio" id="r1" name="someRadioGroup"/>
<script type="text/javascript">
$("#r1").change(function () {
if ($("#r1").attr("checked")) {
$('#r1edit:input').removeAttr('disabled');
}
else {
$('#r1edit:input').attr('disabled', true);
}
});
</script>
【问题讨论】:
-
你当前的代码只会监听
id=r1单选按钮的变化 -
如果选择了id=r2,是否应该取消选择id=r1?取消选择单选按钮没有被此捕获?
-
chk 这可能会有所帮助jsfiddle.net/aqZgs
-
不要使用removeAttr('disabled'),使用prop()改变状态,见my answer。
标签: javascript jquery html radio-button