检查所选行是否具有选中的复选框

时间:2015-09-15 23:49:52

标签: javascript jquery

如何选中所选行是否选中了列复选框? 我可以获得列为inner <input type="checkbox">的内部HTML,但是如何检查是否已检查。

我想看看是否检查了CB?

var l_iNoOfRows=$("#imageResultsList tr").length;

for(var i=1;i<=l_iNoOfRows;i++){
      var l_oSelectedRow =$("#imageResultsList tr")[i]
      var l_sCbColumn =l_oSelectedRow.cells[l_iCB].innerHTML;

 }

5 个答案:

答案 0 :(得分:0)

如果您可以获取复选框并从中创建一个jQuery对象,则可以使用prop方法查找其“已检查”属性的值。

$yourCheckboxElement.prop('checked')会返回一个布尔值,如果选中则会true,如果不是,则返回false

答案 1 :(得分:0)

您可以使用以下代码统计选中的复选框。

var c = $(l_oSelectedRow.cells[l_iCB]).find("input[type='checkbox']:checked").length;

并检查行已检查复选框。

if (c > 0) {
    // checked check box is existed.
} else {
    // checked check box is now existed.
}

答案 2 :(得分:0)

FIDDLE

$('.btn').click(function () {
    $('#table').find("input:checkbox:checked").each(function () {
        var check = $(this).closest('tr').index();
        alert(check);
    });
});

遍历所有选中的复选框并获取最接近的tr的索引

FIDDLE

$('.btn').click(function () {
    var index =$('.input').val();
    var row = $('#table').find('tr:nth-child('+index+')').find('input:checkbox')
    if(row.is(':checked')){
        alert(index);
    }else{
        alert('no check box check');
    }

});

如果要检查行是否有检查检查,请将行号用作选择器,然后检查该行是否有复选框

答案 3 :(得分:0)

更好(更简单)的方法就是这样

$("#imageResultsList tr").each(function(){
    var cb = $(this).find('input [type="checkbox"]');
    if(cb.prop('checked')){
        alert('Checked');
    } else {
        alert('Not Checked');
    }
});

答案 4 :(得分:0)

使用jQuerys .prop功能

请参阅文档:http://api.jquery.com/prop/

<label for="checkbox">Checkbox</label>
<input id="checkbox" type="checkbox" />


$('input[type="checkbox"]').on('click', function() {
    alert($(this).prop('checked'));
});

实施例: https://jsfiddle.net/a26sw7ba/2/

在您的情况下,您可以使用jQuery执行以下操作:

var l_iNoOfRows=$("#imageResultsList tr").length;

for(var i=1;i<=l_iNoOfRows;i++){
    var l_oSelectedRow =$("#imageResultsList tr")[i]
    var l_sCbColumn =l_oSelectedRow.cells[l_iCB].innerHTML;
    alert($(l_sCbColum).prop('checked'));
 }

显然用完成目标所需的声明替换警报。