Javascript Datatables在创建后将类添加到行中
我正在使用Datatables,并试图根据创建表后可以设置的其他输入突出显示行。 无法使用createdrow回调,我不确定它是否适合此用途,因为它用于创建,而我需要它 我可以用javascript来实现,但我认为datatables属性/函数可能有更好的选择Javascript Datatables在创建后将类添加到行中,javascript,datatables,Javascript,Datatables,我正在使用Datatables,并试图根据创建表后可以设置的其他输入突出显示行。 无法使用createdrow回调,我不确定它是否适合此用途,因为它用于创建,而我需要它 我可以用javascript来实现,但我认为datatables属性/函数可能有更好的选择 $(文档).ready(函数(){ $('#myTableId').DataTable(); } ); 已选择功能项(sel){ var opts=[]; var len=选择选项长度; 对于(变量i=0;i
$(文档).ready(函数(){
$('#myTableId').DataTable();
} );
已选择功能项(sel){
var opts=[];
var len=选择选项长度;
对于(变量i=0;i=0){
table.rows[r]。单元格[0]。classList.add('highlithRow');
table.rows[r].单元格[1].类列表.add('highlithRow');
}
否则{
table.rows[r]。单元格[0]。classList.remove('highlithRow');
table.rows[r].单元格[1].类列表.remove('highlithRow');
}
}
}
在初始化方法中添加回调函数:
$(document).ready( function () {
$('#myTableId').DataTable( {
"createdRow": function ( row, data, index ) {
if (data[1] == 200) {
$('td', row).eq(1).addClass("highlithRow");
}
}
} );
} );
您可以在此处了解更多信息:在初始化方法中添加回调函数:
$(document).ready( function () {
$('#myTableId').DataTable( {
"createdRow": function ( row, data, index ) {
if (data[1] == 200) {
$('td', row).eq(1).addClass("highlithRow");
}
}
} );
} );
您可以在此处了解更多信息:假设您已将表分配给变量,如下所示
var table = $('#myTableId').DataTable();
您有一个如下所示的表(帮助您可视化代码所做的工作):
…然后您可以使用DataTables API迭代表中的所有行,并访问每个
节点以及相关行数据:
table.rows().every( function () {
rowNode = this.node();
rowData = this.data();
if (rowData.office === 'Tokyo') {
$(rowNode).addClass( 'highlightme' );
}
} );
这假设行数据是作为对象提供的,例如,来自源JSON的对象
如果数据已经在HTML表中提供,或者如果每一行都作为数组提供,则需要使用索引访问数据单元格:
if (rowData[2] === 'Tokyo') {
最终结果是东京行的所有
元素现在都添加了highlightme
类:
<tr role="row" class="odd highlightme">
<td class="sorting_1">Airi Satou</td>
<td>Tokyo</td>
<td>Tokyo</td>
<td>Accountant</td>
<td>2008/11/28</td>
<td>$162,700</td>
</tr>
佐藤航空
东京
东京
会计
2008/11/28
$162,700
假设您已将表分配给变量,如下所示
var table = $('#myTableId').DataTable();
您有一个如下所示的表(帮助您可视化代码所做的工作):
…然后您可以使用DataTables API迭代表中的所有行,并访问每个
节点以及相关行数据:
table.rows().every( function () {
rowNode = this.node();
rowData = this.data();
if (rowData.office === 'Tokyo') {
$(rowNode).addClass( 'highlightme' );
}
} );
这假设行数据是作为对象提供的,例如,来自源JSON的对象
如果数据已经在HTML表中提供,或者如果每一行都作为数组提供,则需要使用索引访问数据单元格:
if (rowData[2] === 'Tokyo') {
最终结果是东京行的所有
元素现在都添加了highlightme
类:
<tr role="row" class="odd highlightme">
<td class="sorting_1">Airi Satou</td>
<td>Tokyo</td>
<td>Tokyo</td>
<td>Accountant</td>
<td>2008/11/28</td>
<td>$162,700</td>
</tr>
佐藤航空
东京
东京
会计
2008/11/28
$162,700
在我的情况下,它不起作用,因为我想突出显示由于其他部分中的更改而导致的行(表中没有未更改的内容)。请参阅我添加的fiddle链接在我的示例中不起作用,因为我想突出显示由于其他部分中的更改而导致的行(表中没有未更改的内容)。请看我添加的小提琴链接Hanks。使用您的解决方案比直接迭代表行(如我在问题中所述)有什么优势吗?如果您的表使用分页,那么问题中的方法将只对可见(呈现)行进行操作。使用DataTables API意味着您将访问DataTable中的每一行—呈现与否。同样的观点也适用于数据过滤。谢谢。使用您的解决方案比直接迭代表行(如我在问题中所述)有什么优势吗?如果您的表使用分页,那么问题中的方法将只对可见(呈现)行进行操作。使用DataTables API意味着您将访问DataTable中的每一行—呈现与否。这一点同样适用于数据过滤。