数据表响应-显示和隐藏列

Datatable responsive - show and hide column

本文关键字:隐藏 显示 响应 数据表      更新时间:2023-09-26

我有一个数据表,当用户单击按钮时,我希望能够在其上显示和隐藏特定列。

当我使用响应插件时,我在列中用类none声明默认情况下隐藏它:

{
    name: "MyCol",
    className: "none"
} 

因此,点击我的按钮,我尝试显示列:

$("#tblPPMTLines").DataTable().column(-1).visible(true);

这是按预期进行的,但一旦视口发生任何变化(较大或较小),响应插件似乎就会启动并重新隐藏列。

有没有任何方法可以隐藏和取消隐藏响应数据表中的列?

我终于找到了答案。

当使用响应插件时,通过.column(ID).visible(true|false)设置可见性是没有用的。

您必须更改标头的类并重新生成数据表:

$(table.column(ID).header()).addClass( 'never' );
// OR
$(table.column(ID).header()).removeClass( 'never' );
table.responsive.rebuild();
table.responsive.recalc();

来源:https://datatables.net/reference/api/responsive.rebuild()

感谢Deepak Biswal让我再次查看我错过的链接(太快了?):-)