2017-07-18 123 views
0

我正在使用DataTables插件从数据库中构建一个单词表的项目。这是我用来创建我的表的功能。DataTables打印按钮不起作用,打印一个空白页

var word_data_filtered = filterWordData(filter_states); 
words_table = $("#words_generated").DataTable({ 
    "data" : word_data_filtered, 
    "columns" : columns, 
    "aLengthMenu": [[25, 50, 100, 200, -1], 
      [25, 50, 100, 250, "All"]], 
    "pageLength": 100, 
    dom: "lBftipr", 
    buttons: [ 
     'print', 
    ] 
}); 

按钮是DataTables的附加插件/附件。所以我实际上会复制和粘贴包含在我的文件头部的各种脚本的一大块,部分原因是因为如果我错过了一些我想知道的东西。

<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script> 
<script src="//cdn.datatables.net/1.10.7/js/jquery.dataTables.min.js"> 
</script> 
<script src="//cdn.datatables.net/plug-ins/1.10.7/integration/bootstrap/3/dataTables.bootstrap.css"></script> 
<script src="//cdn.datatables.net/plug-ins/1.10.7/integration/bootstrap/3/dataTables.bootstrap.js"></script> 
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css"> 
<link rel="stylesheet" href="https://cdn.datatables.net/tabletools/2.2.4/css/dataTables.tableTools.min.css"/> 
<script src="https://cdn.datatables.net/tabletools/2.2.4/js/dataTables.tableTools.min.js"></script> 
<script src="https://cdn.datatables.net/tabletools/2.2.4/swf/copy_csv_xls_pdf.swf"></script> 

<script src="https://cdn.datatables.net/buttons/1.3.1/js/dataTables.buttons.min.js"></script> 
<script src="https://cdn.datatables.net/buttons/1.3.1/js/buttons.print.min.js"></script> 

所以现在我有一个“打印”按钮,显示在页面上。但在我的Chrome浏览器中,打印按钮不起作用。

点击它后,会打开一个新选项卡,并在表格顶部设置谷歌浏览器的打印面板。但是,打印面板会提示您打印空白页。打印预览显示一个空白页面(好吧,顶部有一个标题,就是这样)打印面板下的表格看起来与我网页上的表格完全一样,所以我假设我已经做了一些实际打印出整个表格的方式。

但仍然。我不知道为什么会发生这种情况,我不确定如何进一步处理

回答

0

打印视图按钮将获取表中显示的数据的副本(根据exportOptions中给出的选择器选项参数)并构造一个新窗口中显示的临时表。

我想你可能需要指定exportOptions为了指示打印按钮它应该打印什么表数据。

https://datatables.net/reference/button/print