在Javascript中将表打印为两部分

时间:2011-07-07 06:45:16

标签: javascript html printing html-table

我应该打印一张桌子,但桌子不适合纸张。我必须打印成两部分。我该怎么办?

请帮帮我。

1 个答案:

答案 0 :(得分:2)

使用THEAD, TFOOT, and TBODY elements可以在不需要javascript的情况下解决问题。以下是W3C文档的引用:

  

表行可以分组到表中   头,桌脚,以及一个或多个   桌子部分,使用THEAD,   TFOOT和TBODY元素,   分别。这种划分使   用户代理支持滚动   桌子身体独立于   桌头和脚。当长桌   印刷,桌头和脚   可以在每个上重复信息   包含表格数据的页面。

请注意,如果包含,则tfoot必须在tbody之前:

<table>
  <thead>
    <tr>
      <th>Col 1 heading</th>
      <th>Col 2 heading</th>
    </tr>
  </thead>
  <tfoot>
    <tr>
      <th>Col 1 footer</th>
      <th>Col 2 footer</th>
    </tr>
  </tfoot>
  <tbody>
    <tr>
      <td>Col 1 data</td>
      <td>Col 2 data</td>
    </tr>
    <tr>
      <td>Col 1 data</td>
      <td>Col 2 data</td>
    </tr>
  </tbody>
</table>

打印表格时,应在每页的表格顶部重复thead中的行。同样,tfoot中的行(如果包含)应在打印表格时打印在每页的表格底部。这取决于用户代理(例如浏览器),但我认为大多数现代浏览器都能正确处理这个问题 - 但这并不是我测试过的。我很想知道你是怎么过的。