描述(Description)
该方法用来获取
row()API
选择器选中行的数据。它可以获取行的数据,或者给行设置新的数据。
需要注意的是,当作为设置方法时,该方法设置的数据会应用到表格中,但是他不会更新表格内部数据对象缓存,除非你再调用
draw()API
方法来触发触发这个操作。
比如像这样 table.row( 0 ).data( newData ).draw();
。 这样操作是为了使表易于优化,在重绘表之前,可以做更多的操作。
类型(Type)
function row().data()
描述(Description):
获取被选中行的数据
返回(Returns):
行的数据源对象。如果使用的是DOM数据源,结果将会是一个数组,如果是非DOM数据源则返回的是数组、对象、实例。
function row().data(d)
描述(Description):
给被选中行设置新的数据
参数(Parameters):
名称(Name) | 类型(Type) | 是否可选(Optional) | |
---|---|---|---|
1 | d |
arrayType
,
objectType
|
No |
给行的数据。这个可能是数组,对象或者是Javascript对象实例,但是需要注意必须表格中数据保持相同格式(比如,表格使用的是对象,这里也需要使用对象) |
返回(Returns):
DataTables API 实例对象,其中结果集中的数据是row选择器范围内的
例子(Example)
当点击单行的时候获取数据
1
2
3
4
5
var table = $('#example').DataTable();
$('#example tbody').on( 'click', 'tr', function () {
console.log( table.row( this ).data() );
} );
当点击行是,增加counter的计数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
var table = $('#example').DataTable();
$('#example tbody').on( 'click', 'tr', function () {
var d = table.row( this ).data();
d.counter++;
table
.row( this )
.data( d )
.draw();
} );
// Note that row().invalidate() could also be used for this example case
更新所有行的数据,等操作完成后重绘表格
1
2
3
4
5
6
7
8
9
10
11
12
var table = $('#example').DataTable();
table.rows().every( function () {
var d = this.data();
d.counter++; // update data source for the row
this.invalidate(); // invalidate the data DataTables has cached for this row
} );
// Draw once all updates are done
table.draw();
相关属性(Related)
下面的选项是直接相关的,也可能是您的应用程序的开发非常有用。
API