DataTables 1.10 全选复选框以选择所有行,甚至是带有分页的隐藏行
Posted
技术标签:
【中文标题】DataTables 1.10 全选复选框以选择所有行,甚至是带有分页的隐藏行【英文标题】:DataTables 1.10 Select All checkbox to select all rows, even hidden rows with pagination 【发布时间】:2014-09-30 01:45:31 【问题描述】:我是DataTables 的新手,并且在表格标题行中有一个带有“全选”复选框的表格,然后每一行都有一个复选框。我可以编写代码来选择选中“选择所有”复选框时选择所有可见复选框,但如果有其他页面,则不会检查这些页面。
我遵循了几个示例,但它们似乎都不起作用,至少我无法让它们起作用。一个在*** 上,它似乎是最接近我正在寻找的东西。所有其他都是早期版本的 DataTables 并且已被弃用。我试图让 *** 示例工作,但此时我只是卡住了。
我的示例代码可以在DataTables Live 网站上找到。有人有什么想法吗?
【问题讨论】:
我发布的 jQuery 示例中有几个错误,所以我在这里简化了它:DataTables Live Updated Example。我现在要做的就是在每个页面上获取所有复选框,当您选中“全选”复选框时进行检查。在我能克服之前,我无法将应付总额加起来。 【参考方案1】:我遇到了同样的问题。使用 'payTable.cells()' 将返回所有数据行,而不仅仅是可见的行,而且我无法以任何方式更改 'checked' 属性。 我通过使用 jquery 更改 DOM 对象解决了这个问题:
var items = $('[id="cb"]');
items.prop('checked', true);
【讨论】:
【参考方案2】:var table = $('table').DataTable();
var checkedBoxes = table.column(columnIndex).nodes().toJQuery();
你会得到 tbody 下的所有复选框作为一个 JQuery 对象
【讨论】:
以上是关于DataTables 1.10 全选复选框以选择所有行,甚至是带有分页的隐藏行的主要内容,如果未能解决你的问题,请参考以下文章