确定 DataTables 是不是在 1.10 版中完成。有回调吗?
Posted
技术标签:
【中文标题】确定 DataTables 是不是在 1.10 版中完成。有回调吗?【英文标题】:Determine if DataTables is done in version 1.10. Is there a callback?确定 DataTables 是否在 1.10 版中完成。有回调吗? 【发布时间】:2015-10-19 13:14:38 【问题描述】:如何确定 DataTables() 是否在 1.10 及更高版本中完成渲染?有没有我可以设置为函数的回调。我想隐藏我的表,直到 DataTables 完成,然后在加载完成后显示它。
在 1.10 版中,我没有遇到回调,而且我认为很多旧的回调现在已被弃用,因为它们的链接将我重定向到 legacy.datatables.net
【问题讨论】:
【参考方案1】:您可以使用init.dt
事件如下:
$('#example').on('init.dt', function(e, settings, json)
console.log( 'Table initialisation complete: '+new Date().getTime() );
);
$('#example').dataTable();
来自manual:
init
事件在您的表完全初始化、加载和绘制数据时调用,尤其是在使用ajax
数据源时。
注意事项
如果您要隐藏/显示表格,则需要在表格可见后使用columns.adjust()
API 方法重新计算列宽。
例如:
$('#example-container').hide();
$('#example').on('init.dt', function(e, settings, json)
$('#example-container').show();
$(this).DataTable().columns.adjust();
);
$('#example').dataTable();
【讨论】:
以上是关于确定 DataTables 是不是在 1.10 版中完成。有回调吗?的主要内容,如果未能解决你的问题,请参考以下文章
如何在DataTables 1.10中使用JQuery DataTables“input”插件
如何使用 jQuery.dataTables 1.10 向 ASP.NET WebMethod 后端发送和接收 JSON?