2

我正在使用 kike table 插件来动态扩展/缩小列宽。一切似乎都工作正常,除了当列宽减小时表格宽度没有减小因此表格的最后一列占据了可用的额外宽度。

有没有办法将列宽重置回原始列宽?

我将 sScrollx 设置为 100%

"sScrollX": "100%",

我有一个功能可以将表格重置回原来的宽度。

function resizeTable(tableId)
{
var oTable = $("#" + tableId).dataTable();
var oSettings = oTable.fnSettings();
oSettings.oScroll.sX = "840px"; // <- updated!
oTable.fnDraw(false);
}

我尝试使用上面的代码在单击按钮时重置滚动 x 值,但这似乎对表格的宽度没有任何影响。

我尝试使用oTable.fnAdjustColumnSizing();,但它也没有帮助我......

有人可以让我知道解决此问题的最佳方法吗?

4

2 回答 2

4

您可以尝试bAutoWidth : false在 dataTables 设置中指定。

于 2013-01-31T09:50:39.440 回答
1

Kike 表(表类)覆盖了数据表(类),因此我无法在这些表上使用任何数据表函数,因此我想出了如下解决方案,

function resizeDataTable(dataTableid){
 $("#" + dataTableid).removeClass('kiketable-colsizable'); // Remove kike column class
    var oTable = $("#" + dataTableid).dataTable(); 
    $(oTable).css({ width: $(oTable).parent().width() }); // Perform datatable functions
    oTable.fnAdjustColumnSizing(); 
  $("#" + dataTableid).addClass('kiketable-colsizable'); // Add kike column class
}

这完美无缺。

于 2013-02-05T18:34:24.843 回答