Можно ли скрыть датируемые кнопки, пока пользователь что-то не сделает?Проблема в том, что по крайней мере до сих пор (v. 1.10.18) экспорт может быть очень медленным с таблицами данных для нефильтрованной таблицы (скажем, 20000 строк).Поэтому я бы хотел, чтобы пользователь видел экспорт только тогда, когда сама таблица отфильтрована.
Я пробовал table.buttons ('pdf', 'excel'). Disable () безрезультатно.
Это код, который отображает таблицу.Я хочу, чтобы он сначала скрывал кнопки, а затем отображал их после того, как пользователь выполняет поиск.
var table = $('#BCHtable').DataTable( {
orderCellsTop: true,
fixedHeader: false,
responsive: true,
oSearch: {"bSmart": false},
ajax: "{{ route('datatableInvBCH') }}",
dom: 'Bfrtip',
buttons: [
'excel', 'pdf'
],
language:
{"url": "{{asset('assets/dt/Spanish.lang')}}"}
,
columns: [
{ data: 'id', name: 'id' },
{ data: 'rotulo', name: 'rotulo'},
{ data: 'serie', name: 'serie'},
{ data: 'tipo', name: 'tipo'},
{ data: 'marca', name: 'marca'},
{ data: 'modelo', name: 'modelo'},
{ data: 'nombre', name: 'nombre'},
{ data: 'rut', name: 'rut'},
{ data: 'region', name: 'region'},
{ data: 'site', name: 'site'}
],
initComplete: function() {
$('#footer-act').show();
}
} );
$('#BCHtable thead tr').clone(true).appendTo( '#BCHtable thead' );
$('#BCHtable thead tr:eq(1) th').each( function (i) {
var title = $(this).text();
$(this).html( '<input type="text" class="form-control" placeholder="'+title+'" />' );
$( 'input', this ).on( 'keyup change', function () {
if ( table.column(i).search() !== this.value ) {
table
.column(i)
.search(this.value)
.draw();
}
} );
} );