我需要用固定列实现3行标题。所以我将标题行附加到dataSrc回调的标题。下面是我如何向标题添加行。
PhantomData
我的表格配置如下:
function createHeaders(headeData){
//.... creating firstHeaderRow
//.... creating secondHeaderRow
$('thead tr:first-child').before(firstHeaderRow);
$('thead tr:last-child').after(secondHeaderRow);
}
问题是在这种情况下firstHeaderRow和secondHeaderRow没有显示fixedColumns。 (它正确显示非固定列)
根据文档,我认为我需要调用fnRedrawLayout()
所以我在createHeaders函数底部添加了以下行
$('#tableElement').DataTable({
fixedColumns : {
leftColumn: 5,
rightColumn: 2
},
ajax: {
dataSrc: function(data){
createHeaders(data.headerData);
}
}
});
但是我在FixedColumn.min上收到此错误
var table = $('#tableElement').dataTable();
var fc = new $.fn.dataTable.FixedColumns( table, {
leftColumn: 5,
rightColumn: 2
});
fc.fnRedrawLayout();
非常感谢任何帮助以使其正常工作。
答案 0 :(得分:1)
解决方案是致电columns.adjust()
和fixedColumns().relayout()
。
这允许数据表知道在构造之后添加的标题行。
固定列扩展也需要更新所有更改,因为它基本上创建了一个新表放在实际表的顶部。