我在订购包含 HTML 的列时遇到问题。在 1.10 的文档中指出,默认情况下应该注意这一点,但事实并非如此。然后我查看了 1.10 的新功能,发现如果同一列中的每个 TD 元素都有一个“数据顺序”属性,则可以通过所述属性进行排序。完美的!问题是,我无法让它工作。
奇怪的是,当页面为静态时,他们的示例可以按预期工作,但在动态加载数据和表格时却没有。
我使用以下选项和更改来启动表格以添加属性。失效是为了告诉 Datatables 它需要重新绘制它(我看到它在某处需要):
"createdRow": function ( row, data, index ) {
if ( data[6] ) {
cell = $('td', row).eq(6);
value = cell.text();
if(value == "Ej fakturerad") {
cell.attr('data-order', 1);
}
else if(value == "Nej") {
cell.attr('data-order', 2);
}
else if(value == "Kredit") {
cell.attr('data-order', 3);
}
else if(value == "Ja") {
cell.attr('data-order', 4);
}
}
oTable
.row( index )
.invalidate()
.draw();
},
我在 Laravel 项目中使用来自 Chumper/datatables 的 composer 包来实现这个 DataTable,这意味着数据源是 Ajax,并使用服务器端处理。
提前致谢!