0

在 cvs,pdf,print 插件 ( tabletools) 中datatable.js,当您单击打印时,会短暂显示一个信息框,其中包含打印信息以及使用 ESC 回到正常视图。您如何控制该信息框中显示的信息,但更重要的是如何防止 if 淡出?或者至少改变它消失之前的时间量?

4

1 回答 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 回答