簡體   English   中英

jquery-datatables多列排序方向

[英]jquery-datatables multi-column sort direction

使用jquery-datatables。

示例: http//jsfiddle.net/b2fLye17/17/

$('#example').DataTable({

    filter:false,
    columnDefs: [
                    {
                        targets: [1],//when sorting age column
                        orderData: [1,2] //sort by age then by salary
                    } 
                ]
});

單擊年齡列時,表按年齡遞增,然后按工資升序排序。

根據年齡上升然后按工資下降進行排序,我可以選擇什么?

謝謝 !

--------------------------編輯1 ---------------------

澄清:當年齡列按升序排序時,它應按年齡遞增,然后按工資降序排序。 當年齡列按降序排序時,它應按年齡降序排序,然后按工資升序排序

--------------------------編輯2 ---------------------

所需結果的圖片 在此輸入圖像描述

使用

$(document).ready(function() {

    $('#example').DataTable({

        filter:false,
        columnDefs: [
                        {
                            orderData: [[1, 'asc'], [2, 'desc']]//sort by age then by salary
                        }
                    ]
    });
});

JS小提琴http://jsfiddle.net/b2fLye17/13/

感謝您提出這個問題我也面臨同樣的問題,然后解決如下

var oTable=$('#example').dataTable({
filter:false
});

oTable.fnSort( [[1,"asc"], [2,"desc"]]);

希望這是有幫助的

這里是。 它有點被黑,但我一直在花費HOURS試圖找出相同的最終目標 - 從兩列中排序。 http://jsfiddle.net/b2fLye17/23/

<td data-age="40">$320</td>
//In custom sort:
var value = parseInt($(td).attr('data-age') + pad(td.innerHTML.substring(1), 10, '0'));

概念:我還沒有找到一種方法來訪問foreach循環中列之外的其他單元格,因此我向要排序的單元格添加了“data-”屬性。 這個數據屬性與我們關心的另一個排序列具有相同的值...所以在我們弄清楚如何訪問循環中的其他“相鄰”單元格之前,會有一些重復的數據。

我將兩個值(隱藏屬性和可見值)組合在一起,然后轉換回要編入索引的int。 由於值的長度不同,我用零填充第二列(4086 vs 40086)。

你可以做var row = settings.aoData._aData[i]; 從行中獲取所有數據並將其與j0xue解決方案相結合,以便您可以按另一列進行排序,而無需在html中添加屬性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM