使用jquery获取表中每个单元格的复选框值

时间:2013-12-04 08:48:43

标签: jquery

我在最后一栏有3个复选框的表数据。我只想通过单击该单元格或选中/取消选中复选框来查看所选复选框的值。 以下是我尝试的结构。

HTML-

<input type="checkbox" name="Promoted" value="Promoted" id="promo_" 
 >Promoted

<input type="checkbox" name="Professional"  value="Professional" id="prof_">Professional

<input type="checkbox" name="Amateur"  value="Amateur" id="amat_">Amateur

jQuery-

$(document).ready(function () {   
$('#table1 tr').click(function (event){

        var user_id = $(this).attr('id');    

        var selected = $("#myOption_1 input:checked").map(function(i,el){return el.name;}).get();
        var data1 = (" \"" + selected.join(";") + "\"");
        alert(data1);
});
});

其中table1是table-id,myOption_1是id,它会递增。

我需要的是选中复选框,我只需要在特定单元格中选中复选框值。

1 个答案:

答案 0 :(得分:0)

点击处理程序中的

this引用点击的tr,因此您可以使用.find()仅过滤tr

中的输入元素
$(document).ready(function () {
    $('#table1 tr').click(function (event) {
        var user_id = $(this).attr('id');
        var selected = $(this).find("input:checked").map(function (i, el) {
            return el.name;
        }).get();
        var data1 = ('"' + selected.join(";") + '"');
        alert(data1);
    });
});

如果你想只定位tr中的最后一个单元格,那么

$(document).ready(function () {
    $('#table1 td:last-child').click(function (event) {
        var user_id = $(this).attr('id');
        var selected = $(this).find("input:checked").map(function (i, el) {
            return el.name;
        }).get();
        var data1 = ('"' + selected.join(";") + '"');
        alert(data1);
    });
});