我有jQuery函数取消选中无线电(id为#radio_range_ [any])并在我开始输入文本字段时检查无线电(带有id #an)(id #custom_range_duration)
$('#custom_range_duration').bind('keypress keyup blur', function() {
if ($('#custom_range_duration').val().length != 0){
$('input[id^="radio_range_"]').attr('checked', false);
$('#an').attr('checked', true);
}
});
当我加载页面并开始在字段中输入时,#radio_range_ unchecks,#并成功检查。但是,当我再次检查#radio_range_范围并开始输入字段时 - 然后#radio_range_取消选中,但#an不再检查。
我做错了什么?
答案 0 :(得分:0)
第二次没有工作的原因是因为jQuery检查属性,并且您正在更改属性,其中&#39差异。
您希望在以编程方式更改已检查状态时始终使用prop()
$('#custom_range_duration').bind('keypress keyup blur', function() {
if ($('#custom_range_duration').val().length != 0) {
$('input[id^="radio_range_"]').prop('checked', false);
$('#an').prop('checked', true);
}
});