Datatable - Как искать и экспортировать данные только тогда, когда поиск не нулевой - PullRequest
1 голос
/ 22 марта 2019

Это подход, который я пробовал до сих пор:

$("#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?

Ответы [ 2 ]

0 голосов
/ 22 марта 2019
$('#tableid').dataTable({
    "fnDrawCallback": function () {
        var table = $('#tableid').DataTable();
        if (table.data().length === 0)
            table.buttons('.buttons-html5').attr('disabled', true);
        else
            table.buttons('.buttons-html5').attr('disabled', false);

    }
});
0 голосов
/ 22 марта 2019

Проверьте возвращенный массив перед нажатием кнопки:

else {
  var table = $('#myTable').DataTable().search('something');
  if( table != "" ){
    table.button('.buttons-pdf').trigger();
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...