0

我正在尝试从两侧匹配复选框选中的值,例如

chkLastFirst         chkThisFirst 
chkLastSecond        chkThisSecond 
chkLastThird         chkThisThird
chkLastFour          chkThisFour

记住两列复选框的文本值是一样的,

First    First
Second   Second
Third    Third
Four     Four

现在我想知道第二列中的复选框已选中“chkThisFirst”,因此第一列中的复选框是否也已选中,或者“chkLastFirst”与第二列复选框与第一列复选框匹配有多少复选框被选中?

简而言之,如果我在第二列中标记了 2 个复选框,那么第一列中的同一个复选框是否被标记,或者第一列中有多少复选框被标记为第二列的标记复选框

希望你能理解如果没有然后问我希望你的建议

谢谢

4

2 回答 2

0

使用 name 属性对它们进行分组,即。

 <input type="checkbox"  name="first"/> <input type="checkbox" 
 name="first"/>

 <input type="checkbox"  name="second"/> <input type="checkbox" 
 name="second"/>

然后在单击一个时使用 JS/JQuery,获取组中的另一个并查看它是否被选中。

这是我的 JsFiddle 实现 http://jsfiddle.net/CbsGN/

$(document).ready(function() {
    $("td:nth-child(2) input[type='checkbox']").on('click',function() {
        var nameValue = $(this).attr('name');
        var groupItems = $("[name ='" + nameValue + "']");
        if($(groupItems[1]).is(":checked"))
        {        
            alert($(groupItems[0]).is(":checked"));
        }
    });

});
于 2013-08-28T08:27:44.467 回答
0

注意:其他海报解决方案可能更好,但使用此代码作为参考,您应该能够提出自己的解决方案。

$(function () {
$('#column2 input[type=checkbox]').change(function () {
    if ($(this).is(':checked')) {
        var $matchingBox = $('#column1 input[value=' + $(this).val() + ']');
        if ($matchingBox.is(':checked')) {
            alert('Yep, box' + $matchingBox.parent('label').text() + ' is checked!');
        }
    }
});
});

链接到小提琴

于 2013-08-28T08:28:17.167 回答