jQuery DataTables水平滚动和过滤不能一起工作

时间:2014-05-28 13:55:16

标签: datatables

我正在使用Datatables并且需要水平滚动和过滤。看起来他们试图写到同一个区域,但我不能同时工作。如果我启用过滤,它将过滤一次,然后过滤器消失。

任何线索?它在内部网中,因此我无法发布代码。

1 个答案:

答案 0 :(得分:2)

我遇到了同样的问题。 经过多次尝试,我找到了两种解决方案。 以下是选项:

1)如果要将列过滤器放在第一个标题(列标题和排序)之后,则以下代码片段有效:

table.columns().eq(0).each( function ( colIdx ) {
    $( 'input', otable.column( colIdx ).header() ).on( 'keyup change', function() {
        table
            .column( colIdx )
            .search( this.value )
            .draw();
    });
});

2)否则,在创建表对象后键入以下代码片段:

table.columns().eq(0).each( function ( colIdx ) {
     $( 'input', 'th:nth-child('+(colIdx+1)+')' ).on( 'keyup change', function() {
          table
              .column( colIdx )
              .search( this.value )
              .draw();
     });
});

的问候。 若昂卢卡斯。