2013-03-08 88 views
1

我想排序列與datatables插件。排序貨幣datatables

列包含:

10 € 
20 € 
200 € 
1000 € 
200 € 
200.20 € 
10.30 € 

問題沒有正確排序,並把它作爲一個字符串。 我用這個代碼,但不工作:

jQuery.extend(jQuery.fn.dataTableExt.oSort, { 
    "formatted-num-pre": function (a) { 
     a = (a==="-") ? 0 : a.replace(/[^\d\-\.]/g, ""); 
     return parseFloat(a); 
    }, 

    "formatted-num-asc": function (a, b) { 
     return a - b; 
    }, 

    "formatted-num-desc": function (a, b) { 
     return b - a; 
    } 
}); 

的問候和感謝。

+0

沒有一個答案的你的問題,但分開貨幣和價格列更好。 – 2013-03-08 14:39:40

回答

1

在呼叫dataTable(聲明之後)中,還需要將該列與您的插件類型鏈接。例如,如果這是你的第三列(因此兩個null S)做這樣的事情:

$(document).ready(function() { 
    $('#table-id').dataTable({ 
     "aoColumns": [ 
      null, 
      null, 
      { "sType": "formatted-num" } 
     ] 
    }); 
}); 

或者您可以使用一個type detection plug-in自動計算出類型的每一列