Fan*_*ang 5 sorting datatable jquery
我对dataTable真的很陌生,我只需要一个简单的解决方案:
var initBasicTable = function() {
var table = $('#basicTable');
var settings = {
"sDom": "t",
"sPaginationType": "bootstrap",
"destroy": true,
"paging": false,
"scrollCollapse": true,
"order": [[0,'desc']]
};
table.dataTable(settings);
$('#basicTable input[type=checkbox]').click(function() {
if ($(this).is(':checked')) {
$(this).closest('tr').addClass('selected');
} else {
$(this).closest('tr').removeClass('selected');
}
});
}
Run Code Online (Sandbox Code Playgroud)
这是有效的,默认情况下对第一列进行排序.
但我读到将0in 更改"order": [[0,'desc']]为负数将从右侧的列开始排序.不过这个:
var settings = {
"sDom": "t",
"sPaginationType": "bootstrap",
"destroy": true,
"paging": false,
"scrollCollapse": true,
"order": [[-1,'desc']]
};
Run Code Online (Sandbox Code Playgroud)
抛出错误,我不知道从哪里继续.
我知道dataTable非常强大,但是, 这不是我想要的,但已经很多了
'按上一个(-1)列排序'没什么?我感到迷茫.任何人?
事实证明并没有那么难,有一点工作:
var table = $('#basicTable');
var index = $(table).find('th:last').index();
var settings = {
"sDom": "t",
"sPaginationType": "bootstrap",
"destroy": true,
"paging": false,
"scrollCollapse": true,
"order": [
[index, "desc"]
]
};
Run Code Online (Sandbox Code Playgroud)
这将获得最后一个'列'的索引并首先对其进行排序.谢谢你的帮助.
您可以像这样初始化表以按最后一列对其进行排序
$('.table').DataTable().columns(-1).order('desc').draw();
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请检查此
只需使用 dataTables 中的重新绘制函数即可:
table.order([0, 'desc']).draw();
Run Code Online (Sandbox Code Playgroud)
并且不要对列索引使用负值。只使用积极的一面。在api中,没有提及可排序列的负列索引。
如果您现在无法关注我,请阅读:“ https://datatables.net/reference/api/order%28%29 ”