如何遍历 DataTables jQuery 中的所有行?
How to loop through all rows in DataTables jQuery?
我正在使用 jquery 插件 DataTables 来构建漂亮的 table
var table = $('#example').DataTable({
"data": source
});
我想为 table
中的所有行创建一个
不幸的是,这种方式可能已经过时并且不适用于新版本(它会启动错误)
$(table.fnGetNodes()).each(function () {
});
并且这种方式仅适用于可见行(前 10 行,因为其他行已分页)
table.each( function ( value, index ) {
console.log( 'Data in index: '+index+' is: '+value );
} );
请问您知道如何循环到所有行吗?
我终于找到了:
var data = table.rows().data();
data.each(function (value, index) {
console.log(`For index ${index}, data value is ${value}`);
});
Datatables 的每一行都有一个迭代器 rows().every(),其中 this
指的是被迭代的当前行的上下文。
tableName.rows().every(function(){
console.log(this.data());
});
如果您使用的是旧版数据表,那么您可以获得所有行甚至分页行,如下所示...
table.fnGetNodes(); // table is the datatables object.
因此我们可以使用 jQuery
提供的 .each()
方法遍历行。
jQuery(table.fnGetNodes()).each(function () {
// You can use `jQuery(this).` to access each row, and process it further.
});
例如,这个数据有三个字段 UserID、UserName 和 isActive,我们只想显示活跃用户
以下代码将 return 所有行。
var data = $('#myDataTable').DataTable().rows.data();
我们将只打印活跃用户
data.each(function (value, index) {
if (value.isActive)
{
console.log(value.UserID);
console.log(value.UserName);
}
});
我正在使用 jquery 插件 DataTables 来构建漂亮的 table
var table = $('#example').DataTable({
"data": source
});
我想为 table
中的所有行创建一个不幸的是,这种方式可能已经过时并且不适用于新版本(它会启动错误)
$(table.fnGetNodes()).each(function () {
});
并且这种方式仅适用于可见行(前 10 行,因为其他行已分页)
table.each( function ( value, index ) {
console.log( 'Data in index: '+index+' is: '+value );
} );
请问您知道如何循环到所有行吗?
我终于找到了:
var data = table.rows().data();
data.each(function (value, index) {
console.log(`For index ${index}, data value is ${value}`);
});
Datatables 的每一行都有一个迭代器 rows().every(),其中 this
指的是被迭代的当前行的上下文。
tableName.rows().every(function(){
console.log(this.data());
});
如果您使用的是旧版数据表,那么您可以获得所有行甚至分页行,如下所示...
table.fnGetNodes(); // table is the datatables object.
因此我们可以使用 jQuery
提供的 .each()
方法遍历行。
jQuery(table.fnGetNodes()).each(function () {
// You can use `jQuery(this).` to access each row, and process it further.
});
例如,这个数据有三个字段 UserID、UserName 和 isActive,我们只想显示活跃用户 以下代码将 return 所有行。
var data = $('#myDataTable').DataTable().rows.data();
我们将只打印活跃用户
data.each(function (value, index) {
if (value.isActive)
{
console.log(value.UserID);
console.log(value.UserName);
}
});