我已经搜索了如何设置dataTable列过滤器的默认选项的高低,但我无法找到如何做到这一点。我仍然是DT的新手所以我认为如果没有任何东西出现,我会首先点击SO然后撕掉数小时的文档。
在任何情况下,我都设置了一个功能来实例化一个新的DT。然后它会在"用户名"中添加一个列过滤器。在我的表中的列。表格中的数据都很好。成功!!
在我的列过滤器中,我有几个用户名,显示为选项。我的问题:如何预先选择其中一个选项,只让表示用户数据显示在表格中。
场景:在我的用户列中,我的值为#34; Peter Pan"。在我的用户列过滤器中,我有选项" Peter Pan"。我正在传递" Peter Pan"进入页面。我怎么只在表中显示彼得潘的价值?
$(document).ready(function() {
$('#userListTable').DataTable( {
initComplete: function () {
var api = this.api();
api.columns().indexes().flatten().each( function ( i ) {
var column = api.column( 2 );
var select = $('<select><option value=""></option></select>')
.appendTo(
$(column.header()).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>' )
} );
select.val("Peter Pan");
select.trigger('change');
} );
}
} );
});
谢谢!