如何在没有数据的数据表中对数据进行排序

时间:2011-08-12 08:39:02

标签: javascript jquery sorting datatables

我想用数字函数按升序和降序两种方式对数据表中的数据进行排序。我使用以下代码但是没有工作。

$('#data_table').dataTable( {
    "aaData": dataSet,
    "aaSorting": [[1,'asc','desc'],[3,'asc','desc']],
    "iDisplayLength": 4,                
    "bInfo": true,
    "bLengthChange": false,
    "bPaginate": true,
    "sPaginationType": "full_numbers",
    "bAutoWidth": true,
    "aoColumns": [
        {   
            "sTitle": "Seller", 
            "sClass": "grey" ,
            "fnRender": function(obj) {
                var data = obj.aData[ obj.iDataColumn ];
                return "<A href='"+ data.url +"'>"+ data.title +"</A>";
            }
        }

2 个答案:

答案 0 :(得分:1)

你想要对两种方式进行排序是什么意思? aaSorting用于对表格进行排序,因此

 "aaSorting": [[1,'asc','desc'],[3,'asc','desc']],

无效(例如):

 "aaSorting": [[1,'asc'],[3,'desc']],

这将在第一次传递时对表进行排序,在第二列上按升序排序,在第四列上按降序排序。

答案 1 :(得分:0)

无法理解,您是否希望在asc和desc顺序中对相同的列进行排序

jQuery.fn.dataTableExt.oSort['string-case-asc']  = function(x,y) {
return ((x < y) ? -1 : ((x > y) ?  1 : 0));};

jQuery.fn.dataTableExt.oSort['string-case-desc'] = function(x,y) {
return ((x < y) ?  1 : ((x > y) ? -1 : 0));};

检查this