Как использовать ссылку в TableTools вместо флеш-кнопок
Я пытаюсь найти способ изменить кнопки на TableTools. Я бы хотел использовать свои собственные ссылки вместо кнопок флэш-памяти. Есть ли способ, которым я могу сделать это? Любой хороший ресурс, научивший меня, как сделать это изменение, и при этом использовать функции, такие как набор кнопок и т. Д.
2 ответа
По словам создателя, единственный способ получить функциональность экспорта TableTools - с помощью кнопок Flash.
Другие найденные вами потоки должны сказать, что в настоящее время нет, это не опция, которую предоставляет TableTools. Опция Flash используется для обеспечения межбраузерной / платформенной возможности полностью сохранять файлы на стороне клиента - эта опция просто недоступна в старых браузерах (IE6, IE7 и т. Д.), Где нет поддержки data:// protocol и опции взаимодействия с локальной файловой системой.
Конечно, было бы возможно добавить эту возможность в TableTools, но я боюсь, что у меня еще не было возможности сделать это. Это на дорожной карте, хотя.
Аллан
Если вы заинтересованы в создании экспортной файловой стороны сервера, вы можете рассмотреть плагин загрузки (GET) для TableTools.
Да, можно переопределить существующие кнопки, например PDF/CSV и т. Д., Или создать новые пользовательские кнопки, содержащие ссылки на URL-адрес для получения или публикации данных. Здесь я показываю 2 метода с методами get:
Для получения дополнительной информации о методах Get & Post:
Посетите: Datatable tabletools Переопределяет метод загрузки GET/POST
Сгенерированный код pdf используется потому, что вывод pdf из tabletools таблицы, строки которой сгруппированы по некоторым данным столбца, перекрывается.
1-й, чтобы переопределить функцию PDF и
2-й, чтобы создать пользовательскую кнопку.
1. Переопределите функцию PDF, чтобы извлечь pdf из кода сервера.
/*Get Method table Tools - PDF - Overriding*/
TableTools.BUTTONS.pdf = {
"sAction": "text",
"sTag": "default",
"sFieldBoundary": "",
"sFieldSeperator": "\t",
"sNewLine": "<br>",
"sToolTip": "",
"sButtonClass": "DTTT_button_text",
"sButtonClassHover": "DTTT_button_text_hover",
//"sButtonText": "PDF",
"mColumns": "all",
"bHeader": true,
"bFooter": true,
"sDiv": "",
"fnMouseover": null,
"fnMouseout": null,
"fnClick": function (nButton, oConfig) {
var oParams = this.s.dt.oApi._fnAjaxParameters(this.s.dt);
var iframe = document.createElement('iframe');
iframe.style.height = "0px";
iframe.style.width = "0px";
//iframe.src = oConfig.sUrl + "?" + $.param(oParams);
iframe.src = oConfig.sUrl;//This is the URl you give in datatable Tabletools pdf override below
document.body.appendChild(iframe);
},
"fnSelect": null,
"fnComplete": null,
"fnInit": null
};
/**/
/*Datatable initialisation*/
$(document).ready(function () {
oTable = $('#alternatecolor').dataTable({
"bJQueryUI": true,
"aLengthMenu": [
[10, 25, 50, 100, -1],
[10, 25, 50, 100, "All"]
],
"sPaginationType": "full_numbers",
"aoColumns": [
null,
null,
null,
null,
null],
"bLengthChange": false, "bPaginate": false,
"sDom": '<"H"Tfr>t<"F"ip>',
//"sDom": 'T<"clear">lfrtip',
"oTableTools": {
"aButtons": [
"csv", "xls",
{
/*PDF Override*/
"sExtends": "pdf",
"sButtonText": "PDF",
//Custom url to fetch pdf report
"sUrl": " report/PDFReportUsers/us/1"
}
]
}
})
/*Row grouping - optional*/
.rowGrouping({ bExpandableGrouping: true,
bExpandSingleGroup: false,
iExpandGroupOffset: -1
//asExpandedGroups: [name]
});
/**/
});
});
2. Пользовательская кнопка для получения PDF из кода сервера.
/*Get Method table Tools - Download custom button*/
TableTools.BUTTONS.download= {
"sAction": "text",
"sTag": "default",
"sFieldBoundary": "",
"sFieldSeperator": "\t",
"sNewLine": "<br>",
"sToolTip": "",
"sButtonClass": "DTTT_button_text",
"sButtonClassHover": "DTTT_button_text_hover",
//"sButtonText": "PDF",
"mColumns": "all",
"bHeader": true,
"bFooter": true,
"sDiv": "",
"fnMouseover": null,
"fnMouseout": null,
"fnClick": function (nButton, oConfig) {
var oParams = this.s.dt.oApi._fnAjaxParameters(this.s.dt);
var iframe = document.createElement('iframe');
iframe.style.height = "0px";
iframe.style.width = "0px";
//iframe.src = oConfig.sUrl + "?" + $.param(oParams);
iframe.src = oConfig.sUrl;
document.body.appendChild(iframe);
},
"fnSelect": null,
"fnComplete": null,
"fnInit": null
};
/**/
$(document).ready(function () {
oTable = $('#alternatecolor').dataTable({
"bJQueryUI": true,
"aLengthMenu": [
[10, 25, 50, 100, -1],
[10, 25, 50, 100, "All"]
],
"sPaginationType": "full_numbers",
"aoColumns": [
null,
null,
null,
null,
null],
"bLengthChange": false, "bPaginate": false,
"sDom": '<"H"Tfr>t<"F"ip>',
//"sDom": 'T<"clear">lfrtip',
"oTableTools": {
"aButtons": [
"csv", "xls"
, {
"sExtends": "download",
"sButtonText": "Download PDF",
"sUrl": "admin/user/4/downloadfile"
}
]
}
})
/*Row grouping - optional */
.rowGrouping({ bExpandableGrouping: true,
bExpandSingleGroup: false,
iExpandGroupOffset: -1
//asExpandedGroups: [name]
});
/**/
});