如何对数据表排名列进行排序,其中包含值' Absent'也

时间:2015-11-21 03:51:24

标签: javascript php datatable columnsorting

我的数据表包含列Rank。 它包括从1开始的学生等级,如果学生缺席,则将等级定义为“缺席”。 问题是当对这个列进行排序时,它就像1,10,11,12,...,2,20,21,..,缺席,缺席,...

我的数据表初始化是

$(document).ready( function () { 

        var  oTable = $('#filtertableobj').dataTable({
            "iDisplayLength": 500,"aLengthMenu": [[100, 200, 500, 1000], [100, 200, 500, 1000]],

            /*BEGIN Fixing the index row so they are not sorted -r2ros */
            "fnDrawCallback": function ( oSettings ) {
                var that = this;            
                /* Need to redo the counters if filtered or sorted */            
                if ( oSettings.bSorted || oSettings.bFiltered )            
                {              
                    this.$('td:first-child', {"filter":"applied"}).each( function (i) 
                    {                    
                        that.fnUpdate( i+1, this.parentNode, 0, false, false );                
                    } );            
                }        
            }, 

            "aoColumnDefs": [{ "bSortable": false, "aTargets": [ 0  ] } ],


        });

   });

如何排序1,2,3,...,10,11,12,..,缺席,缺席,......

1 个答案:

答案 0 :(得分:0)

您正在寻找的东西被称为"自然分类"。如果您在搜索中搜索,那么您将找到答案。试试这个 Sort Array Elements (string with numbers), natural sort