我在Django和rest_framework_datatables中使用数据表。 该表的搜索字段可以正常工作。
我也添加了多重搜索过滤器,但是当我在分页链接之间跳过时,这些过滤器始终显示与第一个查询相关的数据(显然,表格显示了不同的数据)
我将在这些过滤器中显示相对列的所有可用值,否则用表中显示的数据对其进行升级。
var table = $('reportsTable').DataTable({
"ajax": {
'ajax': '/api/myreports/?format=datatables',
},
"columns": [
{ "data": "id" },
{ "data": "title" },
{ "data": "subtitle" },
{ "data": "description" },
],
initComplete: function () {
this.api().columns().every( function () {
var column = this;
var select = $('<select><option value="">All</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>' )
} );
} );
}
});