Autowidth属性不适用于数据表

时间:2018-01-31 10:57:23

标签: javascript jquery css datatables

我将列添加到autoWidth属性设置为true的数据表中。但我添加的列比原始列窄得多。 请参阅此fiddle

以下是结果: enter image description here

ab是原始列,同时添加了test0..3。 我希望所有列都自动调整为各自的内容大小。

欢迎所有帮助!

1 个答案:

答案 0 :(得分:1)

DataTables不幸地不支持添加列,因此需要hack才能获得所需的功能。

在你的小提琴中,当你这样做时,你会保存列的当前宽度;

cols = theDT.settings()[0].aoColumns;

因此我们需要使用此代码重置此保存的宽度(在重新创建addColumnToDataTable函数内的表之前添加它)

for (var k=0;k<cols.length;k++){
  cols[k]['sWidth'] = (100/(cols.length)) + '%';
  cols[k]['sWidthOrig'] = (100/(cols.length)) + '%';
}