DataTables JS / TableTools JS - 导出和打印

时间:2015-01-15 18:19:09

标签: jquery datatables tabletools

我正在使用dataTables(http://www.datatables.net/release-datatables/media/js/jquery.dataTables.js)& tableTools(http://www.datatables.net/release-datatables/extensions/TableTools/js/dataTables.tableTools.js& http://www.datatables.net/release-datatables/extensions/TableTools/css/dataTables.tableTools.css)并显示一个表并想要打印它。但我遇到了同样的问题。

以下是我的选择

 $("#reportTableId").DataTable({
            "paging": false,
            "ordering": false,
            "info": false,
            "sDom": 'Tlrt',
            "iDisplayLength": 100,
            tableTools: {
                "sSwfPath": "../ed1/static/swf/copy_csv_xls_pdf.swf",
                "aButtons": [
                    {
                        "sExtends": "collection",
                        "sButtonText": "Save",
                        "aButtons": [
                            {
                                "sExtends": "xls",
                                "sTitle": $Name
                            },
                            {
                                "sExtends": "pdf",
                                "sTitle": $Name
                            }
                        ],
                        "mColumns": [0, 1, 2],
                        "sPdfOrientation": "landscape"
                    },
                    {
                        "sExtends": "print",
                        "mColumns": "visible"
                    }
                ]
            }
        });

我的报告html结构采用以下格式

    <table id="reportTableId">
  <tr>
    <th class="tg-031e" colspan="2"></th>
  </tr>
  <tr>
    <td class="tg-031e"></td>
    <td class="tg-031e"></td>
  </tr>
  <tr>
    <td class="tg-031e"></td>
    <td class="tg-031e"></td>
  </tr>
  <tr>
    <td class="tg-031e"></td>
    <td class="tg-031e"></td>
  </tr>
  <tr>
    <td class="tg-031e"></td>
    <td class="tg-031e"></td>
  </tr>
  <tr>
    <td class="tg-031e"></td>
    <td class="tg-031e"></td>
  </tr>
  <tr>
    <td class="tg-031e"></td>
    <td class="tg-031e"></td>
  </tr>
  <tr>
    <td class="tg-031e"></td>
    <td class="tg-031e"></td>
  </tr>
  <tr>
    <td class="tg-031e"></td>
    <td class="tg-031e"></td>
  </tr>
  <tr>
    <td class="tg-031e"></td>
    <td class="tg-031e"></td>
  </tr>
  <tr>
    <td class="tg-031e"></td>
    <td class="tg-031e"></td>
  </tr>
  <tr>
    <td class="tg-031e"></td>
    <td class="tg-031e"></td>
  </tr>
  <tr>
    <td class="tg-031e"></td>
    <td class="tg-031e"></td>
  </tr>
  <tr>
    <td class="tg-031e" colspan="2"></td>
  </tr>
  <tr>
    <td class="tg-031e"></td>
    <td class="tg-031e"></td>
  </tr>
</table>

CSS

   .tg-031ea {
        width: 15%;
    }
  1. 当我尝试导出到Excel时,我只得到第1列,没有得到第二列;
  2. 在excel中不会导出单元格颜色
  3. 在PDF格式中,我认为报告HTML为13页,只有1页输出。我试图包括列,但没有成功。
  4. 非常感谢任何帮助。

    HTML输出: HTML snapshot

    PDF输出:(仅标题栏) pdf output

1 个答案:

答案 0 :(得分:1)

希望这还不算太晚,根据我之前的经验,我已经了解到Datatables需要使用valud HTML表,因此在表中使用colspan无济于事。