jQuery Datatable按列标题排序

Ale*_*ham 5 jquery datatables

基本上,jQuery Datatable允许我们按列索引对数据进行排序.

"order": [1, 'desc']
Run Code Online (Sandbox Code Playgroud)

我想知道我们是否可以按列标题名称排序?例如:

"order": ['my_column_name', 'desc']
Run Code Online (Sandbox Code Playgroud)

谢谢Alex

mmu*_*taq 5

有没有办法使用列的名称、数据或类来设置默认列排序? 不——现在不行。

虽然这个帖子是在 2015 年 6 月发布的,但我仍然在最新版本的 DataTable 中找不到这样的功能。

作为旁注! 您必须column index在对 DataTable 的数据进行排序时提供,但您可以了解Column Name应用的排序。

var order = table.order();
var columnIndex = order[0][0]; //column index
var orderDirection =order[0][1]; // asc or desc

//Get column header text;
var title = table.column(order[0][0]).header();
var columnName = $(title).html(); //Column Name
Run Code Online (Sandbox Code Playgroud)

Demo


Shi*_*eph 5

首先通过jquery找到列索引,

然后在数据表函数中插入列索引。

var sort_col = $('#table').find("th:contains('your column name')")[0].cellIndex;

$('#table').dataTable({             
    order: [[ sort_col, 'desc' ]]                
  });
Run Code Online (Sandbox Code Playgroud)

这对我有用。希望这可以帮助。谢谢