在 Javascript 中搜索数据表

Posted

技术标签:

【中文标题】在 Javascript 中搜索数据表【英文标题】:Searching on a datatable in Javascript 【发布时间】:2019-11-30 15:46:41 【问题描述】:

我正在尝试通过将搜索输入值设置为我想要查找的内容来过滤数据表:

document.querySelector("#searchinput").value = $whatiwant;

值设置成功,但不影响数据表结果。我尝试submit it(但它不是表单,所以它不起作用)和simulate the enter key press(但它也不起作用并且没有返回任何错误)。我也尝试使用DataTables filter function,但似乎没有任何反应。

毕竟,我可以做些什么来搜索/过滤数据表?

【问题讨论】:

【参考方案1】:

您可以使用 Datatables API search()

对所有可搜索列执行全局搜索

链接:search()

示例 sn-p 代码:

var table = $('#example').DataTable();

// #myInput is a <input type="text"> element
$('#myInput').on( 'keyup', function () 
    table.search( this.value ).draw();
 );

或者针对特定列使用 API column().search()

提供了跨表全局搜索的能力,这个方法, 及其复数对应物,提供搜索数据的能力 一个特定的列。

链接:column().search()

var table = $('#example').DataTable();

// #column3_search is a <input type="text"> element
$('#column3_search').on( 'keyup', function () 
    table
        .columns( 3 )
        .search( this.value )
        .draw();
 );

【讨论】:

【参考方案2】:

您是否在数据表选项中设置了 search:false?您可以从该选项设置搜索启用和禁用。

datatables searching

您可以通过如下编码启用搜索。通过这样做,您无需添加单独的输入来在数据表中进行搜索。

$('#example').dataTable( 
  "searching": true
 );

【讨论】:

以上是关于在 Javascript 中搜索数据表的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript数据类型

用JavaScript进行表单验证

在 Javascript 中使用时区和夏令时

JavaScript学习:JavaScript数据类型

2.1:JavaScript数据类型

调用侦听器事件时,Javascript 数据不会持续存在