zoukankan      html  css  js  c++  java
  • 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>

    图示:

  • 相关阅读:
    FATAL ERROR: please install the following Perl modules before executing /usr/bin/mysql_install_db:
    redis分布式锁原理与实现
    java中如何将 string 转化成 long
    FastJson中JSONObject用法及常用方法总结
    Spring IOC 一——容器装配Bean的简单使用
    静态代理和动态代理
    Spring AOP——Spring 中面向切面编程
    什么是分布式锁?实现分布式锁的三种方式
    @Consumes @Produces的作用
    pro、pre、test、dev环境
  • 原文地址:https://www.cnblogs.com/huaxie/p/11719444.html
Copyright © 2011-2022 走看看