使用javascript和jQuery访问隐藏的复选框

时间:2013-11-27 17:40:41

标签: javascript jquery jquery-datatables

我有一个数据表,每行都有一个复选框。我正在尝试将select-all功能添加到这组复选框中,为此我创建了以下功能:

function selectAll() {
    $(':checkbox').each(function() {
            this.checked = true;
        });
}

这适用于选择当前可见的所有复选框,但是,未选中数据表的其他页面上的复选框。我知道这些复选框一般存在问题,因为要提交表单并包含这些复选框,我必须添加以下功能:

$('form').submit(function() {
    oTable1 = $('#mytable').dataTable();
    $(oTable1.fnGetHiddenNodes()).find('input:checked').appendTo(this);
});

所以我怀疑为了检查这些复选框,我将以某种方式将它们附加到DOM,至少暂时将它们关闭,然后将它们从DOM中删除。或者我能做些什么更简单的事情?

1 个答案:

答案 0 :(得分:0)

我设法使用以下内容完成了这项工作:

oTable1 = $('#mytable').dataTable();
$(oTable1.fnGetNodes()).find(':checkbox').attr('checked',true);

作为替代方案,您也可以使用

$(oTable1.fnGetFilteredNodes()).find(':checkbox').attr('checked',true);

将仅将“select-all”应用于与当前过滤器匹配的行。