Javascript DataTables预先选择过滤器选项以显示特定数据
我已经对如何设置dataTable列筛选器的默认选项进行了大量的搜索,但我找不到如何设置。我仍然是DT的新手,所以我想我会先点击它,然后在没有任何东西出现的情况下花上数小时编写文档 在任何情况下,我都设置了一个函数来实例化一个新的DT。然后在我的表中的“用户名”列中添加一个列过滤器。数据在表中都显示得很好。成功 在我的列过滤器中,有几个用户名显示为选项。我的问题是:如何预先选择其中一个选项,并且只让用户数据显示在表中 场景:在我的用户专栏中,我有“彼得·潘”的价值。在我的用户栏过滤器中,我有“彼得·潘”选项。我正在将“彼得·潘”的价值传递到页面中。如何在表格中只显示彼得潘的价值Javascript DataTables预先选择过滤器选项以显示特定数据,javascript,jquery,datatable,Javascript,Jquery,Datatable,我已经对如何设置dataTable列筛选器的默认选项进行了大量的搜索,但我找不到如何设置。我仍然是DT的新手,所以我想我会先点击它,然后在没有任何东西出现的情况下花上数小时编写文档 在任何情况下,我都设置了一个函数来实例化一个新的DT。然后在我的表中的“用户名”列中添加一个列过滤器。数据在表中都显示得很好。成功 在我的列过滤器中,有几个用户名显示为选项。我的问题是:如何预先选择其中一个选项,并且只让用户数据显示在表中 场景:在我的用户专栏中,我有“彼得·潘”的价值。在我的用户栏过滤器中,我有“彼
$(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');
} );
}
} );
});
$(文档).ready(函数(){
$('#userListTable')。数据表({
initComplete:函数(){
var api=this.api();
api.columns().index().flatte().each(函数(i){
var列=api.列(2);
变量选择=$(“”)
.附录(
$(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(函数(d,j){
选择。追加(“”+d+“”)
} );
select.val(“彼得潘”);
select.trigger('change');
} );
}
} );
});
谢谢 你能提供一个提琴示例吗?假设你的过滤代码有效,只需在右边触发更改事件就可以了。我必须看看如何做,然后与你联系。我在上面的帖子中添加了代码。根据您的建议,我将Peter Pan设置为select.val(“Peter Pan”);而且效果很好。唯一的问题是表没有更新。有什么想法吗?想出来了。上面添加了代码。