如何动态隐藏FooTable列?

时间:2014-04-10 10:21:52

标签: footable

我已尝试过这段代码,但它只运行一次但不是每次都有效。

$('.rptEmail').attr('data-ignore','true');
$('.rptEmail').attr('data-hide','all');
 $('#ReportMainGrid').trigger('footable_redraw');

我也尝试了其他触发器,但没有任何正常工作。

3 个答案:

答案 0 :(得分:1)

我很惊讶没有其他人遇到这个问题。在查看代码之后,看起来使用.data()jquery函数来拉取行的数据属性。这个问题是(根据我的理解)该函数将填充初始页面加载。这意味着,即使您使用.attr()更改数据隐藏属性,.data()仍将保留旧值。

要解决这个问题,不要触及Footable代码,只需使用.data()函数来更改列的属性。

$("PATH_TO_TH").data("hide", "all");      //Set this to whatever you'd like
$('.footable').data('footable').reset();
$('.footable').footable();

答案 1 :(得分:0)

如果要使用FooTable函数,可以执行以下操作:

FooTable.get('#FooTable_ID').columns.get(col_id).visible = false;
FooTable.get('#FooTable_ID').draw();

其中col_id是您要使用的列的索引。

答案 2 :(得分:-1)

很抱歉跳过这个非常古老的问题,但更简单的方法是通过jquery调用.toggle或.hide / .show:

$('table td:nth-child(1),th:nth-child(1)').hide();

上面的代码将隐藏标题和相关的列行。