有一个具有包含两列的统计信息的表。第一列是 - 名称(字符串),第二列是动作数(数字)如何确保第二列是第一个要排序的列?鉴于值具有相同的名称,并且在字母顺序上排序?
这是我的代码:
$('#clickouts-table').DataTable({
// eslint-disable-line new-cap
processing: false,
stateSave: true,
responsive: true,
iDisplayLength: 25,
order: [[1, 'desc']],
columnDefs: [{
targets: [0],
orderData: [1, 1]
}, {
targets: [1],
orderData: [1, 1]
}],
sDom: `<'row top-row'<'col-sm-2 col-xs-2 col-xxs-12'f><'col-sm-2 col-xs-2 col-xxs-12'l>
<'col-sm-8 col-xs-8 col-xxs-12 custom-button'>>
<'row'<'col-sm-12'tr>>
<'row'<'col-sm-12'<'table-bottom-toolbar clearfix'ip>>>`,
columns: [
{ data: 'userName', name: 'userName' },
{ data: 'count', name: 'count' }
],
data: data
});
谢谢!
我不确定您的要求,但是您可以将第0列作为字符串和1个数字进行排序:
:columnDefs: [{
targets: [0],
orderData: [1, 0],
type: "html"
}, {
targets: [1],
orderData: [1, 0],
type: "num"
}],
请参阅:https://datatables.net/reference/option/columns.type
另外,如果第1列数字匹配,则应将第0列定义为辅助排序选项:
order: [[1, 'desc'], [0, 'asc']]
...
orderData: [1, 0]