2017-04-17 10 views
4

基本的に、jQuery Datatableを使用すると、データを列インデックスで並べ替えることができます。jQuery列ヘッダーによるデータ型並べ替え

"order": [1, 'desc'] 

私は列ヘッダー名で並べ替えることができますか?たとえば、次のように

"order": ['my_column_name', 'desc'] 

ありがとう アレックス

+0

、[**なし**](https://datatables.net/reference/option/order)。 googleで最初のヒット...そして、 "ヘッダー名"は何ですか?それは 'text()'コンテンツですか、 'name =" name "属性なのでしょうか?ヘッダー名を整数定数にマップするだけで、インデックスの代わりにそれらの定数を使用することができます。しかし、それをする利点は何でしょうか?列インデックスは、基本的には列の別の名前です。 '1'は2列目の一意の名前です... – davidkonrad

+1

このような調整がありますが、> ** http://jsfiddle.net/257jmovv/**ですが、それでも目的を見ることはできません。とにかくDOMテーブルで多かれ少なかれハードコード化されています。 – davidkonrad

答えて

2

Is there a way to use the name, data or class of the column in order to set the default column sort? ません - ないこの時点で。

このスレッドは2015年6月にポストされていますが、それでも最新のバージョンのDataTableではこのような機能が見つかりませんでした。

サイドノートとして! DataTableのデータを注文している間にcolumn indexを提供する必要がありますが、ご注文には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 

Demo

関連する問題