2017-01-16 91 views
2

我与多列排序的DataTable和它的作品,但我需要:dataTable的多列排序与“ASC”和“DESC”

第一列“ASC”和第二列说明 - >如何这可能吗?

这里是我的小提琴:https://jsfiddle.net/zukii/Lucq6vc5/28/

在这拨弄列“等级”被自动默认排序“ASC”,然后列“价格”应该是自动的“递减”

var mytable = $('table.dt-tarif').dataTable({ 
    "paging": false, 
    "info":  false, 
    "searching": false, 
    "order": [[ 3, "desc" ]], 

    "aoColumnDefs": [ 
     { 
      "bSortable": false, 
      "aTargets": [0] 
     }, 
     { 
      "type": "currency", targets: 3 
     }, 
     { 
      targets: [ 3 ], 
      orderData: [3, 4] 
     } 
    ], 

    "language": { 
     "lengthMenu": "Zeige _MENU_", 
     "zeroRecords": "Keine Entwürfe vorhanden!", 
     "info": "Seite _PAGE_ von _PAGES_", 
     "infoEmpty": "Es konnte kein Entwurf gefunden werden.", 
     "infoFiltered": "", 
     "search": " ", 
     "paginate": { 
      "first": "Erste", 
      "last": "Letzte", 
      "next": "Vor", 
      "previous": "Zurück" 
     }, 
    } 
}); 

感谢和问候;)

+0

它应该是 - >最好的评价与最低的价格! – zukii

回答

0

您需要使用一个二维数组来实现多列排序归档结果。

var table = $('table.dataTable').DataTable(); 
table 
    .order([ 3, 'asc' ],[ 4, 'desc' ]) 
    .draw(); 

进一步可以改变格式[columnIndex, “ASC | DESC”](例如[1, “降序”]用于分拣

解拨弄:https://jsfiddle.net/ShirishDhotre/a3utn0ek/7/

。检查这是否有助于关闭你的问题

0

这一个现在工作完美:)

https://jsfiddle.net/zukii/Lucq6vc5/37/

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

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

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

jQuery.extend(jQuery.fn.dataTableExt.oSort, { 
    "currency": function (a) { 
    var x = a.replace(",", ".").replace("€", ""); 
    return parseFloat(x); 
    }}); 

var mytable = $('table.dt-tarif').dataTable({ 
    "paging": false, 
    "info":  false, 
    "searching": false, 
    "order": [[ 3, "desc" ]], 

    "aoColumnDefs": [ 
     { 
      "bSortable": false, 
      "aTargets": [0] 
     }, 
     { 
      "type": "currency", targets: 3 
     }, 
     { 
      targets: [ 3 ], 
      orderData: [3, 4] 
     } 
    ], 

    "language": { 
     "lengthMenu": "Zeige _MENU_", 
     "zeroRecords": "Keine Entwürfe vorhanden!", 
     "info": "Seite _PAGE_ von _PAGES_", 
     "infoEmpty": "Es konnte kein Entwurf gefunden werden.", 
     "infoFiltered": "", 
     "search": " ", 
     "paginate": { 
      "first": "Erste", 
      "last": "Letzte", 
      "next": "Vor", 
      "previous": "Zurück" 
     }, 
    } 
}); 
相关问题