我有多个数据表,由于它们是在 dom 加载时配置的,因此标头未对齐。我用过:
$('.myclass').on('shown.bs.modal', function (e) {
$($.fn.dataTable.tables(true)).DataTable()
.columns.adjust()
.fixedColumns().relayout();
})
这稍微起作用了,只调整了最后的四张桌子。我希望所有表格在显示时都进行调整。是否有其他解决方案或我错过了什么?
下面链接的示例
https://jsfiddle.net/aq9Laaew/231606/
为什么要尝试将$.fn.dataTable.tables
转换为jQuery实例?但是查看文档并改为执行此操作:
$('div.modal').on('shown.bs.modal', function (e) {
var tables = $.fn.dataTable.tables({ api: true });
tables.columns.adjust().draw();
tables.fixedColumns().relayout().draw();
});
如果您只想定位即将显示的模态,则可以visible: true
参数。