首页 > 解决方案 > Datatable - 如何仅在搜索不为空时搜索和导出数据

问题描述

这是我迄今为止尝试过的方法:

$("#ExportPDF").on("click", function() {
    var datatable = $('#myTable').DataTable();                    
    if (! datatable.data().any()) {
        console.log( 'the table is actually empty' );                       
    }
    else{
        var table = $('#myTable').DataTable().search('something');
        table.button( '.buttons-pdf' ).trigger();
    }
});

当我的表是空的时,它不会导出任何东西,这对我来说是完美的。

现在,当表格包含元素时,我会搜索关键字something;如果找到项目,他们会导出它们。但是当没有找到信息时,它仍然会导出一个空的 PDF。

如何避免导出空的 PDF?

标签: javascriptjquerydatatables

解决方案


在触发按钮之前检查返回的数组:

else {
  var table = $('#myTable').DataTable().search('something');
  if( table != "" ){
    table.button('.buttons-pdf').trigger();
  }
}

推荐阅读