2017-09-06 33 views
1

,我有以下的數據我傳遞一個數據表表:調整數據表訂貨

data = [{'state': 'Baseline', 'contact': 'Johnny', 'years_active': 10}, 
     {'state': '1', 'contact': 'Rachel', 'years_active': 10}, 
     {'state': '2', 'contact': 'Steve', 'years_active': 8}] 

表有三列:statecontactyears_active。當我在state列上排序時,帶有state='Baseline'的行位於表格的底部。有什麼辦法可以調整排序機制,所以這一行將在最上面?

也許在後臺將Baseline轉換爲'0'或者可能將字符值定義爲小於數字值?

回答

1

您可以控制render回撥列中的排序值。參數type定義了返回值將用於的範圍,即篩選,排序和顯示。隨着||運營商的魔力,你可以返回-1時,該列將被排序,該值不是一個數字:

columns: [ 
    { data: 'state', 
    render: function(data, type) { 
     if (type == 'sort') { 
     return parseInt(data) || -1 
     } 
     return data 
    } 
    }, 
    { data: 'contact' }, 
    { data: 'years_active' } 
] 

看到演示 - >http://jsfiddle.net/721hdxa5/

+0

神奇的偉大工程! –