Я пытаюсь экспортировать dataTable Grid как CSV
. Я искал и узнал, что мне нужно использовать TableTools. Но у меня нет этого плагина. Раньше я крал эти версии DataTable:Как экспортировать jQuery dataTable в CSV?
steal("vendor/datatables/js/jquery.dataTables.js").then(
"vendor/datatables-plugins/js/dataTables.bootstrap.js",
"vendor/datatables-plugins/css/dataTables.bootstrap.css",
"vendor/datatables-colreorder/js/dataTables.colReorder.js",
"vendor/datatables-colreorder/css/dataTables.colReorder.css");
Так я искал и нашел в этом link:
Это расширение теперь отставного и был заменен на кнопки и Выбор расширений. Документация сохраняется только для . Новые проекты должны использовать кнопки и выбрать в предпочтение TableTools.
Так я украсть эти требования, имеющие кнопки:
steal("vendor/datatables.net-buttons/js/dataTables.buttons.js").then(
"vendor/datatables.net-buttons/js/buttons.flash.js",
"vendor/datatables.net-buttons/js/buttons.colVis.js",
"vendor/datatables.net-buttons/js/buttons.html5.js",
"vendor/datatables.net-buttons/js/buttons.print.js",
"vendor/datatables.net-buttons-dt/css/buttons.dataTables.css");
и добавил кнопки в JQuery DataTable.
buttons: [
'csv', 'excel', 'pdf', 'print'
]
Код для DataTable ниже:
this.dataTable = this.$reportGrid.dataTable({
"aaData": aaData,
"aaSorting": aaSorting,
"aLengthMenu": this.options.pageSizes,
"aoColumns": aoColumns,
//"asStripeClasses": ["odd-row", "even-row"],
"autoWidth": true,
"bDestroy": true,
"bSort": this.options.allowSort === undefined ? true : this.options.allowSort,
"stateSave": true,
"bDeferRender": true,
"bScrollCollapse": true,
"footerCallback": function (nFoot, aData, iStart, iEnd, aiDisplay) {
if (that.data.totals) {
that.$tfoot.html(that.getTemplatePath(that.options.tmplFooter), that.data);
} else {
that.$tfoot.empty();
}
},
"fnStateLoadParams": function (oSettings, oData) {
oData.iStart = 0;
/* Reset the initial row displayed to be the first one. */
oData.aaSorting = oSettings.aaSorting;
/* Use the sorting supplied, not the one saved. */
oData.oSearch = oSettings.oSearch;
/* Use the search options supplied, not the ones saved. */
oData.ColReorder = [];
/* Empty this saved column reordering */
},
"pageLength": this.options.pageSize,
"displayStart": 0,
"language": {
"info": "Displaying rows _START_ to _END_ of _TOTAL_",
"lengthMenu": "Show _MENU_ rows at a time",
"paginate": {
"first": "First",
"last": "Last",
"previous": "Prev",
"next": "Next"
},
"searchPlaceholder": "Search..."
},
"sDom": this.buildsDom(),
buttons: [
'csv', 'excel', 'pdf', 'print'
],
"pagingType": "full_numbers",
"sScrollX": this.options.scrollX,
"drawCallback": function (o) {
if (that.options.autoHeight) {
that.adjustGridHeightToContainer();
}
that.removeTableInlineOverflowStyle();
if (that.element != null) {
can.trigger(that.element, 'grid_drawn');
}
}
});
Но когда я побежал код, кнопки не отображаются. Я пробовал как показано ниже:
"buttons": [
'csv', 'excel', 'pdf', 'print'
]
Как я могу использовать это? Есть ли способ экспортировать файл csv с меньшими изменениями или что-то еще, что мне нужно включить?
Если кто-нибудь дает downvote, то он/она должен прокомментировать. –