我有一个名为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
答案 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;
}