Вы пытались вручную вставить кнопки?
var table = $('#payments-table').DataTable({...
$('#div_to_place_buttons_in').html(table.buttons().container());
Из моего опыта работы с DataTables вам не понадобится dom: 'Bfrtip'
, если вы вручную переместите контейнер кнопок в другое место.
Для вашего комментария просто измените экземпляр DataTables, который будет храниться в переменной с именем table, и удалите часть dom
, и тогда у вас будет доступ к экземпляру DataTables в табличной переменной.См. Ниже:
var table = $('#payments-table').DataTable({
buttons: [
'copy', 'csv', 'excel', 'pdf', 'print'
],
processing: true,
serverSide: true,
ajax: '{{ route('get.payments') }}',
order:[ [5,'desc'] ],
columns: [
{ data: 'id', name: 'id' },
{ data: 'sub_id', name: 'sub_id' },
{ data: 'company_name', name: 'company_name'},
{ data: 'amount', name: 'amount'},
{ data: 'status', name: 'status'},
{ data: 'job_date', name: 'job_date'},
{ data: 'amount_payed', name: 'amount_payed'},
{ data: 'date_payed', name: 'date_payed'},
{ data: 'trn_ss', name: 'trn_ss'},
{ data: 'account_number', name: 'account_number'},
{ data: 'bank_name', name: 'bank_name'},
{ data: 'bank_branch', name: 'bank_branch'},
]
});
$('#div_to_place_buttons_in').html(table.buttons().container());
Я не уверен, как выглядит ваш HTML, но вам просто нужен контейнер div / аналогичный, чтобы разместить кнопки и ссылаться на него вместо div_to_place_buttons_in
.