如果选中了复选框,请选择其他两个复选框

时间:2014-10-16 10:45:52

标签: javascript jquery html

该表包含几行:

<tr>
    <td>
        <input type="checkbox" name="indicator[]">
    </td>
    <td>
        <input type="checkbox" name="graduations[]">
    </td>
    <td>
        <input type="checkbox" name="graduations[]">
    </td>
    <td>
        <input type="checkbox" name="graduations[]">
    </td>
    <td>
        <input type="checkbox" name="graduations[]">
    </td>
    <td>
        <input type="checkbox" name="graduations[]">
    </td>
</tr>

如果未选中'graduations',我需要禁用'indicator'。如果选中,我需要检查该行中的两个'graduations'

我的实际代码仅限制已检查'graduations'的数量。

$(function() {
    $('input[name=graduations\\[\\]]').click(function() {
        if($(this).parent().siblings().children("input[name=graduations\\[\\]]:checkbox:checked").length >= 2)
            this.checked = false;
    });
});

2 个答案:

答案 0 :(得分:1)

你可以试试这个:

$("#area_covered").click(function(){
    if($("#area_covered").is(':checked'))
        $('.area_covered').prop('checked', true);
    else
        $('.area_covered').prop('checked', false);  
});

给你要点击的复选框提供一些id,并为你想要检查的其他复选框提供一些类。 然后使用上面的jquery标签,它肯定适合你。\

谢谢&amp;享受编码:)

答案 1 :(得分:-1)

更新了这个简单的FIDDLE

 $(function(){
    $("input[name^=graduations]").on("change",function(e){
        if((!$("input[name^=indicator]").is(":checked")) || +$("input[name^=graduations]:checked").length > 2 ){
              $(this).prop('checked',false);
        }

    });

});

简化

希望有所帮助