2016-09-30 42 views
0

我正在使用jquery数据表,并仅列出每个分页中所需的值。但是,当我试图使用pdf选项将其导出为pdf时,我只能导出数据表中存在的数据。有什么办法可以获得所有值从数据表中获取pdf中的所有值

+0

你想用默认的'PDF格式DataTable'导出一个额外的数据? –

回答

1

根据DataTable Documentation,当您使用服务器端处理时,无法导出所有行。

在服务器端处理特别注意:服务器端处理:当 服务器端处理模式(服务器端)的选择,改性剂具有 对行收效甚微使用数据表选择因为在服务器上执行所有处理 (排序,搜索等)。因此,客户端上存在的唯一的 行是在任何 的表中显示的那些行,并且选择器只能选择位于当前页面上的那些行。

那么唯一的办法就是到ALL参数添加到菜单的长度和出口之前选择它。

这样DataTable将导出所有行,如在UI上显示的那样。

例如:

var table = $('#example').DataTable({ 
    serverSide: true, 
    ajax: "/your_ajax_url/", 
    lengthMenu: [[10, 100, -1], [10, 100, "All"]], 
    ..... 

那么,如果你想与DataTable一些自定义的消息,那么它提供的功能,以出口与一些自定义的信息表,以确定结果更好。

该消息是

消息:将在所创建的PDF表格上方显示
可选描述消息。

DEMO:https://jsfiddle.net/Prakash_Thete/n6gsh0j1/1/

添加消息表的语法像下面

$('#example').DataTable({ 
     dom: 'Bfrtip', 
     buttons: [ 
      { 
       extend: 'pdfHtml5', 
       message: 'PDF created by Prakash with Buttons for DataTables.' 
      } 
     ] 
}); 

如果你想修改(我的意思是造型)导出PDF看看at http://pdfmake.org/#/gettingstarted

他们为导出的PDF提供了一些很酷的东西。

我要探索可用PDF导出其他选项看看 https://datatables.net/reference/button/pdf

+0

我正在通过ajax在数据表中显示数据。我只在第一个分页显示10个结果,并点击第二个分页ajax被调用,并显示另一个10结果。所以当我只输出10个结果时就会显示在PDF中。我想要所有结果。 – Stephin

+0

更新了我的答案。请看一看。 –

+0

感谢您的回答,从中获得了一个想法来定制我的数据表 – Stephin

相关问题