如何匹配两列的标记复选框?

时间:2013-08-28 08:01:33

标签: c# asp.net .net checkbox webforms

我正在尝试匹配来自两侧的复选框检查值,如

chkLastFirst         chkThisFirst 
chkLastSecond        chkThisSecond 
chkLastThird         chkThisThird
chkLastFour          chkThisFour

记住两列的文本值复选框相同,

First    First
Second   Second
Third    Third
Four     Four

现在我想知道第二列中的复选框已选中“chkThisFirst”所以是第一列的复选框也是cheked或者“chkLastFirst”匹配第二列复选框与第一列复选框检查了多少复选框?

简单来说,如果我在第二列中标记2复选框,那么第一列中的相同复选框是否标记或第二列标记复选框中第一列标记多少复选框

希望你站在原地,如果没有,那么问我希望你的建议

由于

2 个答案:

答案 0 :(得分: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"));
        }
    });

});

答案 1 :(得分: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!');
        }
    }
});
});

Link to Fiddle