我目前正在尝试使用JQuery从数据表中制作自定义CSV。我创建了一个自定义导出按钮:
$.fn.dataTable.ext.buttons.my_button
并且我目前正在扩展CSV并在custom方法中编写我的逻辑。问题在于,这会导致通过CSV解析大量代码,而这似乎比创建我所需的CSV困难。我正在尝试合并数据单元格,更改标题等。
如果我可以读取传递给custom方法的DataTable API对象并从头开始构建自己的CSV,那将容易得多。这可能吗?
答案 0 :(得分:0)
事实证明,这实际上非常简单。您需要做的就是将csv重置为空白字符串,然后将其备份。
$.fn.dataTable.ext.buttons.custom_1= {
className: 'buttons-alert',
extend: 'csv',
text: 'SalesForce',
filename: 'salesforce_export',
customize: function(csv, button, dataTable){
csv = 'New Column,New Column 2'
dataTable.rows().every(function (rowId, tableLoop, rowLoop){
var row_data = this.data();
var custom_column_1 = row_data.cell + '$';
var custom_column_2 = row_data.cell2 + ', ' + row_data.cell3;
var row = [custom_column_1,custom_column_2].join();
row += '\n';
csv += row;
});
return csv;
}
}