LODOP的ADD_PRINT_TABLE中不能总计在最后一页显示在tfoot后面

ADD_PRINT_TABLE有计算功能,还会每页显示tfoot和thead里的内容。相关其他博文:
如果一个表格既有需要每页显示的tfoot,还有一个总计功能,想显示在最后一页的tfoot后面,是不行的,因为tfoot默认就是在表格的最后显示。

在ie里访问下表格,会发现即使 在tfoot后面加了tbody或行,也会显示到tfoot前面去,这就是浏览器的解析效果。LODOP本身不自带解析超文本引擎,都是调用的本机底层的解析引擎,和本机ie一致。
所以想把某些内容放到tfoot的后面是不行的。

1.把总计放到tfoot里,在tfoot的最后一行,可以在让总计显示在最后一页的最后一行,且由于tfoot是每页显示的,所以总计也会每页显示。
2.把总计放到tbody里,不会每页显示,放到tbody的最后一行,总计会在最后一页显示,但是会显示在tfoot的上面,不会是最后一行。
3.去掉tfoot,在无tfoot的情况下,总计可以显示在最后一页最后一行。
4.不用LODOP的ADD_PRINT_TABLE计算方法,在后台或前面用其他方式进行计算处理。
其他:如果前面有tfoot,不让总计在最后一页的最后一行显示。

测试代码:(tdata是全表统计,不用tindex指定列的情况下是该单元格所在的列。)

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>WEB打印控件LODOP</title>
<script language="javascript" src="LodopFuncs.js"></script>
</head>
<body>
<div id="p">
<table border=1 style="border-collapse:collapse;" width="150cm">
<thead>
<tr>
    <td height="5cm">表头1</td>
    <td height="5cm">表头2</td>
</tr>
</thead>
<tr>
    <td height="70mm">10</td>
    <td height="70mm">20</td>
</tr>
<tr>
    <td height="70mm">22</td>
    <td height="70mm">33</td>
</tr>
<tr>
    <td height="70mm">44</td>
    <td height="70mm">55</td>
</tr>
<tfoot>
<tr>
    <td height="70mm">表尾1</td>
    <td height="70mm">表尾2</td>
</tr>
    <tr>
    <td height="70mm">总计</td>
    <td height="70mm" tdata="AllSum" tindex="2">###</td>
</tr>
</tfoot>
</table>
</div>

<div id="p2">
<table border=1 style="border-collapse:collapse;" width="150cm">
<thead>
<tr>
    <td height="5cm">表头1</td>
    <td height="5cm">表头2</td>
</tr>
</thead>
<tr>
    <td height="70mm">10</td>
    <td height="70mm">20</td>
</tr>
<tr>
    <td height="70mm">22</td>
    <td height="70mm">33</td>
</tr>
<tr>
    <td height="70mm">44</td>
    <td height="70mm">55</td>
</tr>
<tfoot>
<tr>
    <td height="70mm">表尾1</td>
    <td height="70mm">表尾2</td>
</tr>
</tfoot>
<tbody>
    <tr>
    <td height="70mm">总计</td>
    <td height="70mm" tdata="AllSum" >###</td>
</tr>
</tbody>
</table>
</div>
<a href="javascript:prn0_preview()">11打印预览(超文本不透明,有背景色)</a><br>
<script language="javascript" type="text/javascript">   
        var LODOP; //声明为全局变量 
        function prn0_preview() {
        LODOP=getLodop(); 
        LODOP.PRINT_INIT("");
        LODOP.SET_PRINT_PAGESIZE(1,1000,1000,"");
        LODOP.ADD_PRINT_TABLE("10mm",0,"100%",200,document.getElementById("p").innerHTML);
        LODOP.NEWPAGEA();
        LODOP.ADD_PRINT_TEXT(10,30,100,20,"第二个表格---");
        LODOP.ADD_PRINT_TABLE("10mm",0,"100%",200,document.getElementById("p2").innerHTML);
        LODOP.PRINT_DESIGN();
        //LODOP.PREVIEW();    
    };
</script> 
</body>

图示:

posted @ 2019-10-25 13:27  花谢悦神  阅读(1559)  评论(0编辑  收藏  举报