jQuery重复对字段更改的操作

时间:2016-10-31 22:56:57

标签: jquery

我有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不再检查。

我做错了什么?

1 个答案:

答案 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);
    }
});