Jquery 选中单选按钮后,选中并禁用复选框

Jquery 选中单选按钮后,选中并禁用复选框,jquery,forms,Jquery,Forms,我还在学习jquery,但这正是我想要的 如果选择了值为“16”的单选按钮,我希望选中带有班级新闻稿的复选框,然后使其无法取消选中 如果取消选择值为16的单选按钮,我希望能够再次使用该复选框 $("input[type=radio][name=<your radio button set name here>]").changed( function () { if ($("input[type=radio][name=<your radio button set na

我还在学习jquery,但这正是我想要的

如果选择了值为“16”的单选按钮,我希望选中带有班级新闻稿的复选框,然后使其无法取消选中

如果取消选择值为16的单选按钮,我希望能够再次使用该复选框

$("input[type=radio][name=<your radio button set name here>]").changed( function () {
    if ($("input[type=radio][name=<your radio button set name here>]").val() == "16") {
        $("input[type=checkbox].newsletter").attr('checked', 'checked');
        $("input[type=checkbox].newsletter").attr('disabled', 'disabled'); //this is one way to make it not unselectable
    }
    else {
        $("input[type=checkbox].newsletter").removeAttr('disabled');
    }
}

注意:您应该在公共级别(即在脚本级别或父函数内部,如果它们在$(document).ready()函数中声明)上声明
var stayChecked

如果没有看到HTML,我假设一个简单的情况。下面是一些简短的jQuery,可以满足您的要求:

$('input[type="radio"]').click(function() {
    $('input.newsletter').attr({
        'checked': $(this).val() == 16,
        'disabled': $(this).val() == 16
    });
});​

太棒了,+1因为它非常通用非常漂亮。。。有没有办法修改它,以便在选中17单选按钮时不会取消选中复选框?您可以将选中的属性从上面更改为“'checked':$(this).val()==16 | |$('input.newsletter').attr('checked')=未定义,`。
$('input[type="radio"]').click(function() {
    $('input.newsletter').attr({
        'checked': $(this).val() == 16,
        'disabled': $(this).val() == 16
    });
});​