如果该列的页脚中的总计为0,则隐藏列

时间:2017-11-16 06:50:57

标签: javascript jquery datatables

我有一个名为mtable的表,它有28列,我也有一个复选框我的问题是这个。

如果列的总数为零(0),如何隐藏列?您知道,footerCallback这是我的测试示例代码

$('input:checkbox').change(function () {
  var expgltable =  $('#mtable').DataTable()
  var column = expgltable.column(2);
  var api = this.api();

  var test = $(api.column(28).footer());
  if (test == 0) {
    column.visible( ! column.visible() );
  } 
});

如果页脚总数为零,则尝试隐藏第28列,但似乎对我不起作用。

我的目标是这个

/* On checkbox event */
if (checkbox is checked) {
  /* Hide all columns that has 0 total on footers */
} else {
  /* Put it all back */
}

TYSM

1 个答案:

答案 0 :(得分:0)

请看看这是否有帮助

$('#mtable').DataTable( {
    footerCallback: function ( row, data, start, end, display ) {        
        var sumofSalary = api
            .column(28)
            .data()
            .reduce( function (a, b) {
                return intVal(a) + intVal(b);
            } );
    });
});

if(sumofSalary == 0) {
    // logic for column hide;
}