同一个table下的tr进行分页打印

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/lijj_html5/article/details/70257539

开始尝试用css的page-break-after 属性 实现对tr  的分页 打印效果,结果发现 该属性对 table 不起作用, 

然后换了一种方法,方法的思路大概描述下

          1 、 先找到 要进行打印的tbody 然后 利用tbody 得到在其内的 tr数组。

           2 、利用循环, 每打印一页 ,就 删除打印过的tr (我这里是每6个tr是一页,所以每次删6行)

           3、利用  LODOP.NewPage() 来创建新页。代码如下

        var trs = tbodys.getElementsByClassName('sz-prst-table-row');
        var length = trs.length;    // tr的length 要取一个定值。

        for(var i = 0; i< length; i+=6){ 
             var labelHtml = doc.getElementsByTagName("html")[0].innerHTML;
             LODOP.NewPage();    // 创建新页
             LODOP.ADD_PRINT_HTM("0", "0", "100%", "101%",labelHtml);  //设置新页的内容
             tbodys.removeChild(trs[0]);tbodys.removeChild(trs[0]);     //删除打印过的 tr
             tbodys.removeChild(trs[0]);tbodys.removeChild(trs[0]);
             tbodys.removeChild(trs[0]);tbodys.removeChild(trs[0]);
         } 

展开阅读全文
博主设置当前文章不允许评论。

没有更多推荐了,返回首页