Jquery数据表初始化时的一次回调

时间:2011-08-05 21:04:30

标签: javascript jquery datatables

我一直在使用Jquery的datatable插件一段时间并遇到了一个问题我不知道如何以干净的方式解决。我希望有一个类似于fnCallback()的函数回调函数,它只在数据表首次初始化并且加载了第一页数据时执行。

我有一种情况,我想等到我的数据表被构造为能够自定义一些元素(向插件动态创建的元素添加一些自定义类)。

我可以这样做:

var isInitialized = false;
$("#completed-action-items-table").dataTable(
     "fnDrawCallback": function () {
         if (!isInitialized) {
            //do logic
            isInitialized = true;
         }
     });

但这看起来很难看。

任何建议都会很棒,谢谢!

2 个答案:

答案 0 :(得分:0)

我认为你的可能是最好的技术,没有编写CSS选择器来定位你感兴趣的元素而不添加额外的类。

答案 1 :(得分:0)

原始答案有效,但您可能更喜欢这种更惯用的方式:

if ($.fn.dataTable.isDataTable('#example')) {
  // Do something else since the dataTable's already initialized
}
else {
  // Initialize the dataTable
  table = $('#example').DataTable({
    paging: false
  });
}

来源:https://datatables.net/manual/tech-notes/3