Прежде всего, я только начинающий в этой области. У меня проблема с выравниванием каждого столбца в соответствии с требованиями. Я могу настроить только заголовок таблицы данных. Когда дело доходит до стилизации столбца таблицы, я не нашел ни одного решения, подходящего для моего текущего приложения. Любая помощь, ребята?
Я пытался использовать doc.styles.columnDef, но, похоже, этот метод скрывает мою текущую нумерацию таблиц и функцию поиска.
Фактический код, кстати, был реализован предыдущим разработчиком ранее.
<script>
$('#data-table').DataTable({
"paging": true,
"fixedHeader": true,
"lengthChange": true,
"searching": true,
"ordering": true,
"info": true,
"autoWidth": true,
"scrollX": false,
"language": {
"lengthMenu": "{{ trans('general.lengthMenu') }}",
"zeroRecords": "{{ trans('general.zeroRecords') }}",
"info": "{{ trans('general.info') }}",
"infoEmpty": "{{ trans('general.infoEmpty') }}",
"search": "{{ trans('general.search') }}",
"infoFiltered": "{{ trans('general.infoFiltered') }}",
"paginate": {
"first": "{{ trans('general.first') }}",
"last": "{{ trans('general.last') }}",
"next": "{{ trans('general.next') }}",
"previous": "{{ trans('general.previous') }}"
},
"columnDefs": [
{"orderable": false, "targets": 0}
]
},
responsive: true,
});
var reportTitle = 'Invoice Listing Report';
var table = $('#data-table').DataTable();
var buttons = new $.fn.dataTable.Buttons(table, {
buttons: [
{
extend: 'pdfHtml5',
text: '<i class="fa fa-file-pdf-o"></i>',
orientation: 'potrait',
titleAttr: 'PDF',
customize: function(doc) {
doc.content.splice(0, 1, {
text: [{
text: reportTitle+'\n\n',
bold: true,
fontSize: 16
}],
margin: [0, 0, 0, 12],
alignment: 'center'
});
// Style table header
doc.styles.tableHeader = {
bold: !0,
fontSize: 11,
color: 'black',
fillColor: '#FFF',
alignment: 'center'
};
//Style table column here?
var objLayout = {};
objLayout['hLineWidth'] = function(i) { return .5; };
objLayout['vLineWidth'] = function(i) { return .5; };
objLayout['hLineColor'] = function(i) { return '#aaa'; };
objLayout['vLineColor'] = function(i) { return '#aaa'; };
objLayout['paddingLeft'] = function(i) { return 4; };
objLayout['paddingRight'] = function(i) { return 4; };
doc.content[1].layout = objLayout;
}
}
]
}).container().appendTo($('#buttons'));
</script>
Есть ли какие-нибудь советы по настройке каждого столбца таблицы? Извините за плохой английский