确定DataTables是否在版本1.10中完成.有回调吗?

use*_*438 5 javascript jquery datatables datatables-1.10

如何确定DataTables()是否在1.10及更高版本中完成渲染?我可以在某个地方设置回调函数.我想隐藏我的表,直到DataTables完成,然后在加载完成后显示它.

对于版本1.10,我没有遇到回调,我认为很多旧的回调现在已被弃用,因为他们的链接将我重定向到legacy.datatables.net

Gyr*_*com 4

您可以按如下方式使用init.dt事件:

$('#example').on('init.dt', function(e, settings, json){
    console.log( 'Table initialisation complete: '+new Date().getTime() );
});

$('#example').dataTable();
Run Code Online (Sandbox Code Playgroud)

手册中:

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();
Run Code Online (Sandbox Code Playgroud)