我正在通过datatables插件在我的php代码中实现一个过滤器和排序选项。对于输入类型字段,我正在设置通配符搜索,但我不希望通配符搜索选择框。在我的选择框中,两个值有“活动”和“非活动”。那怎么做。请帮我。 我的代码就像:
$("#example").dataTable().columnFilter({
aoColumns: [
null,
null,
null,
null,
null,
null,
null,
{
type: "select",
values: ["Active","Inactive"]
},
null,
null
]
});
function fnCreateSelect( aData )
{
var r='<select><option value=""></option>', i, iLen=aData.length;
for ( i=0 ; i<iLen ; i++ )
{
r += '<option value="'+aData[i]+'">'+aData[i]+'</option>';
}
return r+'</select>';
}
function fnFilterColumn ( i )
{
$('#example').dataTable().fnFilter(
$("#col"+(i+1)+"_filter").val(),
i,true
);
}
答案 0 :(得分:0)
$(document).ready(function() {
$('#example').DataTable( {
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 ? '^'+val+'$' : '', true, false )
.draw();
} );
column.data().unique().sort().each( function ( d, j ) {
select.append( '<option value="'+d+'">'+d+'</option>' )
} );
} );
}
} );
} );
选择所有列的框