2017-11-08 43 views
0

私はJQuery Datatableを持っています。これは、最初の列に基づいて降順でソートされています。列の並べ替えの矢印並べ替え

は、テーブル自体は正常に動作しますが、テーブルが描かれていたら、私は下のスクリーンショットで赤い丸で囲まている、矢印ボタンを並べ替える列の動作を変更しようとしています:

column reordering behaviour i want to change

これらの小さな矢印ボタンをクリックすると、テーブルはの順に並べ替えられます。クリックした列の最初の文字はです。たとえば、列の矢印を1回クリックすると、テーブルは次のようになります。これらの日付の昇順で並べ替えられました(追加された最も古い日付まず、私が欲しいものではありませんこれは、)テーブルの上部に表示されます:

behaviour I have right now

私が探していますどのようなテーブルが最初クリックで順番降順に発注するためのものですその列を2回クリックする必要はありません(1回は昇順に、もう一度は降順に)。基本的に私は、最初のクリックで、この結果を取得しようとしているが、私は唯一の第二のクリックでそれを取得しています:

behaviour I want on first click

は私が行動を変えるために私のテーブルコードに追加することができ、簡単な設定があります列の矢印の並べ替えの?私は彼らのAPIといくつかの過去のStackOverflow質問を見ていたが、私の問題に関連するものは何も見つかりませんでした。事前に

self.table = table_dom.DataTable({ 
    serverSide: true, 
    dom: "<'row'<'col-md-3'l><'col-md-5 text-right'B><'col-md-4'f>>" + 
     "<'row'<'col-md-12'tr>>" + 
     "<'row'<'col-md-5'i><'col-md-7'p>>", 
    ajax: '...', 
    columns: [ 
     {data: 'legacy_description', name: 'legacy_description', title: 'P', width: '20px'}, 
     ... 
     {data: 'created', name: 'created', title: 'Date Created (UK)', width: '150px'}, 
    ... 
    ], 
    order: [[0, 'desc']], 
    responsive: true, 
    pageLength: 10, 
    ... 
}); 

ありがとう:あなたが見てしたい場合は

は、ここに私のコードです。

答えて

1

columns.orderSequenceを使用して、各列の順序順序をカスタマイズします。例えば

、以下のコードを使用して、最初の降順で3番目の列をソートする:トリックをした

$('#example').DataTable({ 
    "columnDefs": [ 
    { "orderSequence": [ "desc", "asc" ], "targets": [ 2 ] } 
    ] 
}); 
+0

おかげで、! –

関連する問題