正如标题所说,我正在使用Ajax调用来获取表的新数据并使用aaData初始化参数。调用都正常工作,并使用正确的数据重新填充表。我遇到的问题是,尽管第一个表格绘制正确,但所有后续调用都不会自动调整列宽以填充表格的整个宽度 - 相反,列只有它们的数据宽。
我正在调用DataTables:
$(document).ready(function(){
$('#applyFilter').click(function(){
//set up vars for ajax options and aoColumns
$.get('myAjaxsource', options, function(response){
$('#grid-container').dataTable({
'aaData': response.AADATA,
"aoColumns": aoColumns,
"bJQueryUI": true,
"bDestroy": true
});
});
});
}
注意:aoColumns对象不包含显式宽度。我也尝试在DataTables对象上调用fnAdjustColumnSizing(),但这会导致所有表(包括第一次调用)的宽度都很小。另外,我已经尝试删除bJQueryUI参数。
生成的第一个表的计算宽度为1262px。看起来该表在第二次调用后插入了style =“width:100px”属性,计算宽度为322px。
答案 0 :(得分:0)
事实证明,尽管我设置的内联样式为“width:100%”,但第二个调用正在破坏它并添加自己的属性“style ='width:100ox'”。将样式放在样式表中并标记它!重要的固定内容。