我正在使用DataTables 1.10,并且已向表中添加了列过滤器。问题在于,列过滤器仅使用表中当前显示的值填充。
在图像中,表格当前显示1和2,并且使用这些值填充列过滤器。 3、4和5是有效值,但显示在下一页。我希望列过滤器显示所有可能的值,即1、2、3、4和5。
我正在使用服务器端处理,并且能够查询数据库以获取要在列过滤器中显示的值。但是,当我传回列数据时,我不确定如何将此“额外”列过滤器数据传回我的树枝模板。
在Twig模板中,我使用DataTables示例“单个列搜索(选择输入)”中的代码。
initComplete: function () {
this.api().columns().every( function () {
var column = this;
var select = $('<select><option value=""></option></select>')
.appendTo( $(column.footer()).empty() )
.on( 'change', function () {
var val = $.fn.dataTable.util.escapeRegex(
$(this).val()
);
column
.search( val, false, false )
.draw();
} );
column.data().unique().sort().each( function ( d, j ) {
select.append( '<option value="'+d+'">'+d+'</option>' )
} );
} );
}