数据表过滤器未重绘表

时间:2018-10-07 18:20:37

标签: datatable

表A

email | data1 | data2 | data3
aaaaa | xxxx  | xxxx  | xxxx
bbbbb | xxxx  | xxxx  | xxxx
ccccc | xxxx  | xxxx  | xxxx

表B

email | data7 | data8 | data9
aaaaa | xxxx  | xxxx  | xxxx
bbbbb | xxxx  | xxxx  | xxxx
ccccc | xxxx  | xxxx  | xxxx

我在页面中有两个数据表。这两个表具有相同的唯一密钥,即电子邮件。由于表中有许多列,因此为了提供更好的表示性,我没有将这些表连接在一起。

然后在这里提出一些问题。当我在表A中执行某些过滤操作时,它又如何过滤表B中的数据?

现在,我在脑海中有了一个非常愚蠢的想法来解决它。.也就是说,在获取表A中的最新数据之后,检索其所有电子邮件值,最后在表B中一一比较。 / p>

但是它现在不起作用。未应用过滤器。我尝试添加draw()。

$tableA.DataTable({
     drawCallback: function( settings ) {
          var api = this.api();
          var filterData = api.rows( {page:'current'} ).data();

          filteredEmailList = [];

          for(var i=0; i<filterData.length; i++){
             filteredEmailList.push(filterData[i][4]);
          }

          $tableB.column(1).data()
          .filter( function ( value, index ) {
             if(_.contains(filterEmailList, value)){
               return true;
             }else{
               return false;
             }
          });
     }
});

有什么想法吗?

谢谢。

1 个答案:

答案 0 :(得分:0)

刚刚发现我应该使用搜索API而不是过滤器API。