javascript – jQuery 1.9.1中的单选按钮是否有错误?

前端之家收集整理的这篇文章主要介绍了javascript – jQuery 1.9.1中的单选按钮是否有错误?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我一直在尝试用jQuery来编程选择单选按钮,我以为会像更改checked属性一样简单.

但是,以下代码似乎没有在Chrome / Firefox中的jQuery 1.9.1中预期.

预期行为:单击包围单选按钮的div – > ‘checked’属性设置 – >在DOM中呈现检查.

实际行为:点击包围单选按钮的div – > ‘checked’属性设置 – >渲染检查DOM中的第一个和第二个按钮,后续按钮不呈现为检查.

jQuery的:

$('div.form-type-radio').on('click',function () {    
    var Id = $(this).find('input[type=radio]').attr('id');   
    $('form input[type=radio]:not(#'+Id+')').removeAttr('checked');   
    $('#' + Id).attr('checked','checked');    
    console.log($('#' + Id));    
});

这是一个jsFiddle – http://jsfiddle.net/GL9gC/

我已经尝试了与以前版本的jQuery相同的代码,它都按预期工作.

解决方法

在这种情况下,您应该使用 prop()而不是 attr()/ removeAttr().

这是一个工作jsFiddle.

jQuery的:

$('div.form-type-radio').on('click',function () {
    var Id = $(this).find('input[type=radio]').prop('id');
    $('form input[type=radio]:not(#'+Id+')').prop('checked');
    $('#' + Id).prop('checked','checked');
    console.log($('#' + Id));
});

猜你在找的jQuery相关文章