Javascript Datatables筛选器排序问题中的columnfilterwidget

Javascript Datatables筛选器排序问题中的columnfilterwidget,javascript,jquery,arrays,sorting,jquery-datatables,Javascript,Jquery,Arrays,Sorting,Jquery Datatables,我将DataTables 1.10与Columnfilterwidget一起使用 我面临的问题是 我有这样的价值观 0,1.44,10100100.00,20,20.13 现在Columnfilterwidget正在按字母顺序对这些值进行排序 0 1.44 10 100 100.00 20 20.13 但我希望它们被数字过滤 0 1.44 10 20 20.13 100 100.00 像这样, 这就是我迄今为止所尝试的 在Columnfilterwidget.js文件中

我将DataTables 1.10与Columnfilterwidget一起使用

我面临的问题是 我有这样的价值观 0,1.44,10100100.00,20,20.13

现在Columnfilterwidget正在按字母顺序对这些值进行排序

0
1.44
10
100
100.00
20
20.13
但我希望它们被数字过滤

0
1.44
10
20
20.13
100
100.00
像这样,

这就是我迄今为止所尝试的

在Columnfilterwidget.js文件中

          ColumnFilterWidget.prototype.fnDraw = function() {
                    var widget = this;
                    var oDistinctOptions = {};
                    var aDistinctOptions = [];
                    var aData;
                    if ( widget.asFilters.length === 0 ) {
                            // Find distinct column values
                            aData = widget.oDataTable.fnGetColumnData( widget.iColumn );

                            $.each( aData, function( i, sValue ) {
                                    var asValues = widget.sSeparator ? sValue.split( new RegExp( widget.sSeparator ) ) : [ sValue ];
                                    $.each( asValues, function( j, sOption ) {
                                            if ( !oDistinctOptions.hasOwnProperty( sOption ) ) {
                                                    oDistinctOptions[sOption] = true;
                                                    aDistinctOptions.push( sOption );
                                            }
                                    } );
                            } );
                            // Build the menu
                            widget.$Select.empty().append( $( '<option></option>' ).attr( 'value', '' ).text( widget.oColumn.sTitle ) );
//                             aDistinctOptions.sort();
                          aDistinctOptions.sort(function(a,b){return a - b});

                            $.each( aDistinctOptions, function( i, sOption ) {
                                    var sText;
                                    if(sOption==='')
                                            sText = $( '<div> (Blank )</div>' ).text();
                                    else
                                            sText = $( '<div>' + sOption + '</div>' ).text();
                                    widget.$Select.append( $( '<option></option>' ).attr( 'value', sOption ).text( sText ) );
                            } );
                            if ( aDistinctOptions.length > 1 ) {
                                    // Enable the menu
                                    widget.$Select.attr( 'disabled', false );
                            } else {
                                    // One option is not a useful menu, disable it
                                    widget.$Select.attr( 'disabled', true );
                            }
                    }
            };

我做错了什么?

多亏了网络流浪汉解决了这个问题

[

只是做了他在插件和

               "oColumnFilterWidgets": {

                  "aoColumnDefs": [

                     { "bSort": false, "sSeparator": " / ", "aiTargets": [ 2 ] },

                     { "fnSort": function( a, b ) { return a-b; }, "aiTargets": [ 3 ] }

                  ]

               }
希望这有帮助

               "oColumnFilterWidgets": {

                  "aoColumnDefs": [

                     { "bSort": false, "sSeparator": " / ", "aiTargets": [ 2 ] },

                     { "fnSort": function( a, b ) { return a-b; }, "aiTargets": [ 3 ] }

                  ]

               }