检查是否选中了jquery数据表行中的复选框

时间:2017-01-04 03:04:07

标签: jquery datatables

我是JQuery和数据表的新手。我有一个连续三列的数据表。第一列是复选框,其他两列是文本。我想检查是否在某个事件上检查了第一列(复选框)。我能够获得其他字段,但我不知道如何检查是否选中了复选框。我有行ID,我使用下面的代码来获取行和其他列

def textSearcher(string, wantedText):
    for x in string(or whatever has the text):
        if x == wantedText:
            return x

我也尝试过以下方法,它工作正常。但是当我使用分页移动到下一页时,这不起作用。

function uncheckRow(trId) {<br>
    var table = $(‘#example’).DataTable();
    var row = table.row("#"+trId);
    var rowData = row.data();
    var name = rowData[1];
    var age = rowData[2];
    // need to check if the check box in the 1st column(rowData[0]) is checked or not, If it is checked, i have to uncheck
    …
}

请提供解决方案。 感谢。

2 个答案:

答案 0 :(得分:1)

试试这个。如果您有对行对象的引用,则可以访问内存中的节点,无论它是否在DOM中。

function uncheckRow(trId) {
    var table = $(‘#example’).DataTable();
    var row = table.row("#"+trId);
    var rowData = row.data();
    var name = rowData[1];
    var age = rowData[2];

    var $tr = $(row.node());
    var $checkbox = $tr.find('td:first-child input[type="checkbox"]')
    if($checkbox.is(':checked')){
        $checkbox.prop('checked', false);
    }
}

答案 1 :(得分:0)

这可能有效。下面附加的链接具有有关jquery数据表的完整演示。

具有Checkbox演示的DataTable:https://www.gyrocode.com/articles/jquery-datatables-checkboxes/