我正在使用此插件https://datatables.net/examples/api/multi_filter_select.html
我的选项列表有问题
http://i61.tinypic.com/f5543t.jpg
现在是10,12,14,3,4,5,6,7
我希望有3,4,5,6,7,10,12,14
它可能是一些选项,但我找不到它..
我的jQuery代码喜欢
$(document).ready(function() {
$('#example').DataTable( {
initComplete: function () {
var api = this.api();
api.columns().indexes().flatten().each( function ( i ) {
var column = api.column( i );
var select = $('<select><option value="">Wybierz</option></select>')
.appendTo( $(column.footer()).empty() )
.on( 'change', function () {
var val = $.fn.dataTable.util.escapeRegex(
$(this).val()
);
column
.search( val ? '^'+val+'$' : '', true, false )
.draw();
} );
column.data().unique().sort().each( function ( d, j ) {
select.append( '<option value="'+d+'">'+d+'</option>' )
} );
} );
},
"lengthMenu": [[10, 25, 50, -1], [10, 25, 50, "Wszystko"]],
} );
} );
提前感谢您的帮助。
答案 0 :(得分:0)
您的值列表按字符串排序,而不是数字。显然,在该列的某个位置,您有非数字数据阻止DataTables识别其类型。
有关可用数据类型的列表,请参阅column.type文档。如果您在该列中包含HTML标记,我认为您需要num
或html-num
。
您的代码需要更改,如下所示:
$('#example').DataTable({
'columnDefs': [{
// Use your actual column index instead of 0
'targets': 0,
// Use 'num' or 'html-num' depending on your column data
'type': 'html-num'
}],
// Other initialization options
)};
答案 1 :(得分:0)
我找到了一个解决方案 - 只需删除第20行中的.sort(),它就像魅力一样:)