在 cvs,pdf,print 插件 ( tabletools
) 中datatable.js
,当您单击打印时,会短暂显示一个信息框,其中包含打印信息以及使用 ESC 回到正常视图。您如何控制该信息框中显示的信息,但更重要的是如何防止 if 淡出?或者至少改变它消失之前的时间量?
问问题
458 次
1 回答
0
所以我的同事不想花时间在这里发布答案,但我想我会分享它以防其他人发现该信息有用:
看起来在不将源代码更改为 TableTools.js 的情况下它保持打开的时间量没有设置如果您在第 1779 行查看该文件,您会看到它被硬编码为 3 秒。
因为tabletools
在我的整个应用程序中都在使用它,所以我不想更改源代码并影响所有其他用途。相反,我这样做了:
$("#myTable").dataTable({
...
"oTableTools": {
"sSwfPath": "SomePath/TableTools/media/swf/copy_csv_xls_pdf.swf",
"aButtons": [
...
{
"sExtends": "print",
"sTitle": "",
"sInfo": "",
"sMessage": "",
"fnComplete": function ( nButton, oConfig, oFlash, sFlash ) {
openDialogWithMessage("Press the [Esc] key to return to the normal view.");
$('.ui-dialog,.ui-widget-overlay').addClass('doNotPrint');
}
}
]
}
});
这openDialogWithMessage()
只是一个自定义帮助函数来弹出jQuery UI Dialog Box
. 然后在我的CSS
文件中:
@media print {
.doNotPrint, .doNotPrint * { display: none !important; }
}
于 2014-10-29T17:52:09.523 回答