【问题标题】:DataTables - .search() function with 2-table selectorDataTables - 带有 2 表选择器的 .search() 函数
【发布时间】:2018-01-26 18:56:37
【问题描述】:

我在网页上有 2 个数据表,它们正在使用单个选择器进行实例化:

var myTable = $('.dataTable').DataTable();

然后我想同时在这两个表上使用“搜索”功能来查找相同的值。

问题是这样做只会对第二个表进行搜索操作。

jsfiddle:https://jsfiddle.net/a2afkn4a/

DataTables 文档对此似乎很清楚,说可以使用单个选择器一起初始化和操作多个表:https://datatables.net/examples/basic_init/multiple_tables.html

如何使用一个选择器将此搜索应用于两个表?

注意:我知道我可以“轻松”分离表格并独立操作它们。问题是表的创建是在许多其他网页使用的库中完成的,因此制作 2 个具有不同 id 的独立表需要大量工作才能确保它仍然可以在使用该库的所有页面上工作。

我们将不胜感激。

【问题讨论】:

    标签: javascript jquery datatables


    【解决方案1】:

    你说得对,DT docs 确实,很清楚...

    这些表独立于用户控制(即用户控制的一个表上的分页不会影响其他表),但它们确实共享给定的初始化参数(例如,如果您指定西班牙语文件,所有表格都将以西班牙语显示)。

    jQuery 对象代表一组元素,DT 对象不代表。您可以同时初始化它们,但这并不意味着 DT 对象将包含多个表。

    您需要单独进行。

      var opts = {
        "sPaginationType": "full_numbers",
        data: dataSet,
        columns: columnDefs,
      };
    
      $('.dataTable').each(function(){
        $(this).DataTable(opts).column(0).search('Airi').draw();
      });
    

    这是更新后的fiddle

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-04-03
      • 1970-01-01
      • 1970-01-01
      • 2015-02-04
      • 1970-01-01
      • 1970-01-01
      • 2014-05-10
      • 2015-01-18
      相关资源
      最近更新 更多