如何在搜索框中输入值在数据表中。 有没有办法在数据表的搜索框中输入值?
答案 0 :(得分:25)
如果您只是想在执行搜索时检查值[dataTables 1.10.x ]:
var table = $('#example').DataTable();
$('#example').on('search.dt', function() {
var value = $('.dataTables_filter input').val();
console.log(value); // <-- the value
});
如果要在搜索前检查值,并且能够取消搜索,则必须取消绑定默认搜索框事件并创建自己的事件,如下所示 - 仅当用户输入的字符数超过3时才搜索:< / p>
$('.dataTables_filter input').unbind().keyup(function() {
var value = $(this).val();
if (value.length>3) {
table.search(value).draw();
}
});
演示 - &gt;的 http://jsfiddle.net/pb0632c3/ 强>
完全重置搜索/过滤器,例如用户是否已删除搜索词:
if (value.length==0) table.search('').draw();
答案 1 :(得分:6)
是。有。只需在没有参数的情况下调用搜索方法。
var query = dataTable.search()
答案 2 :(得分:4)
var table = $('.datatable').DataTable();
$('.datatable').on('search.dt', function (e, settings) {
table.search( this.value ).draw();
})
//or custom input
// #myInput is a <input type="text" id="myInput"> element
$('#myInput').on( 'keyup', function () {
table.search( this.value ).draw();
});
答案 3 :(得分:0)
尝试此功能来检测按键,然后绘制DataTablee。
$('#search').on('keyup change', function () {
var table = $('#example').DataTable();
table.api().search($(this).val()).draw();
});
答案 4 :(得分:0)
您可以对所有数据表版本执行类似的操作 我们在这里所做的是跟踪搜索输入字段,然后仅获取其值 无需使用此方法使用数据表api
$('input[type="search"]').on( 'keyup', function () {
console.log($(this).val());
} );