$("#dataTable").DataTable({
dom: 'Bfrtip',
buttons: [
{ extend: 'excel', text:'export to excel',title:'1'},
],
})
我可以通过以下代码更改按钮的文字,但我无法获得title属性。
var table= $("#dataTable").DataTable();
tabele.button(0).text('excel');
答案 0 :(得分:3)
一旦在对象中设置并且初始化了数据表,就无法对其进行更改。你可以通过init上的页面元素动态设置它。
("#dataTable").each( function(index) {
var exportTitle = $("#somePageElement").text();
$(this).DataTable({
dom: 'Bfrtip',
buttons: [
{
extend: 'excel',
title: exportTitle
},
{
extend: 'pdf',
title: exportTitle
}
]
});
这篇文章对如何处理这个问题提出了很好的建议。 Setting up a custom file name datatables export excelHtml5 with a select text
答案 1 :(得分:2)
在我的情况下,我必须覆盖按钮的动作,添加一些内容来更改标题,然后调用原始按钮方法。
在此示例中扩展CSV:
$("#dataTable").DataTable({
dom: 'Bfrtip',
buttons: [
{extend: 'csv',
text:'export to csv',
title:'1',
action: function(e, dt, button, config) {
config.title = "New title";
// This checks whether the HTML5 or flash version needs
// to be called, so it's not needed if the button you are using
// doesn't have that distinction
if ($.fn.dataTable.ext.buttons.csvHtml5.available( dt, config )) {
$.fn.dataTable.ext.buttons.csvHtml5.action(e, dt, button, config);
}
else {
$.fn.dataTable.ext.buttons.csvFlash.action(e, dt, button, config);
}
}}
]
})