zoukankan      html  css  js  c++  java
  • 使用JavaScript合并单元格

    今天在写代码的时候要求对表格进行合并和统计,但是在合并的过程中出现了好多问题,不过最终还是解决啦,O(∩_∩)O~~,下面把写好的代码展示出来

     <table border="2px " align="center" id="GoodsTable">
                                    <thead>
                                    <tr>
                                        <th>商品コド</th>
                                        <th>商品名</th>
                                        <th>受注コド</th>
                                        <th>出庫數</th>
                                        <th>合計出庫數</th>
                                    </tr>
                                    </thead>
                                    <tbody id="GoodsTbody">
    
    
                                    <tr>
                                        <td>1002</td>
                                        <td>ball</td>
                                        <td>10001</td>
                                <td>100</td>
                                <td>300</td>
    
                            </tr>
                            <tr>
                                <td>1002</td>
                                <td>ball</td>
                                <td>10001</td>
                                <td>100</td>
                                <td>300</td>
                            </tr>
                            <tr>
                                <td>1002</td>
                                <td>ball</td>
                                <td>10001</td>
                                <td>100</td>
                                <td>300</td>
                            </tr>
                            <tr>
                                <td>1001</td>
                                <td>ball</td>
                                <td>10001</td>
                                <td>100</td>
                                <td>300</td>
                            </tr>
                            <tr>
                                <td>1001</td>
                                <td>ball</td>
                                <td>10001</td>
                                <td>100</td>
                                <td>300</td>
                            </tr>
                            <tr>
                                <td>1001</td>
                                <td>ball</td>
                                <td>10001</td>
                                <td>100</td>
                                <td>300</td>
                            </tr>
                            <tr>
                                <td>1003</td>
                                <td>ball</td>
                                <td>10001</td>
                                <td>100</td>
                                <td>300</td>
                            </tr>
                            <tr>
                                <td>1003</td>
                                <td>ball</td>
                                <td>10001</td>
                                <td>100</td>
                                <td>300</td>
                            </tr>
                            <tr>
                                <td>1003</td>
                                <td>ball</td>
                                <td>10001</td>
                                <td>100</td>
                                <td>300</td>
                            </tr>
                            <tr>
                                <td>1004</td>
                                <td>ball</td>
                                <td>10001</td>
                                <td>100</td>
                                <td>300</td>
                            </tr>
                            <tr>
                                <td>1004</td>
                                <td>ball</td>
                                <td>10001</td>
                                <td>100</td>
                                <td>300</td>
                            </tr>
                            <tr>
                                <td>1004</td>
                                <td>ball</td>
                                <td>10001</td>
                                <td>100</td>
                                <td>300</td>
                            </tr>
                            <tr>
                                <td>1004</td>
                                <td>ball</td>
                                <td>10001</td>
                                <td>100</td>
                                <td>300</td>
                            </tr>
    
    
                            </tbody>
    
                        </table>
    

      合并单元格之前的效果

     加入下边的JavaScript脚本代码

    <script type="text/javascript">
    
    
        function merge1() {
    //      获取当前的表
            var tb = document.getElementById("GoodsTbody");
    //       获取行数
    
    //       设置跨行动态变量
            var rowsnum = tb.rows.length;
    //第一次遍历,该遍历主要是为了把一个表看成了两个表,然后两个表两相对应
            for (var i = 0; i < rowsnum; i++) {
    //            获取第一列里边的值
                var TempStr = tb.rows[i].cells[0].innerHTML;
    //            在求总和时赋予初始值
                var total = parseInt(tb.rows[i].cells[3].innerHTML);
    //            跨行为0
                rowspan = 0;
    //            第二次遍历,不要让自己与自己比较
                for (var j = i + 1; j < rowsnum; j++) {
    
                    if (TempStr == tb.rows[j].cells[0].innerHTML) {
                        rowspan++;
    //              求和计算
                        total += parseInt(tb.rows[j].cells[3].innerHTML);
    //                    alert("rownums is " + rowspan + "and I is " + i + "and j is" + j + "and total is" + total);
    //                  设置跨行
                        tb.rows[i].cells[0].rowSpan = rowspan + 1;
                        tb.rows[i].cells[1].rowSpan = rowspan + 1;
                        tb.rows[i].cells[4].rowSpan = rowspan + 1;
    //                    求和操作
                        tb.rows[i].cells[4].innerHTML = total;
    //                    不显示以下列
                        tb.rows[j].cells[0].style.display = "none";
                        tb.rows[j].cells[1].style.display = "none";
                        tb.rows[j].cells[4].style.display = "none";
    
                    }
                }
            }
    
        }
        merge1();
    
    </script>
    

      

  • 相关阅读:
    go语言】Goroutines 并发模式
    Mysql Innodb 引擎优化 参数(innodb_buffer_pool_size)
    多key业务,数据库水平切分架构一次搞定
    Goroutine是如何工作的?
    PHP进程之信号捕捉中的declare(ticks=1)
    php多进程总结
    mysql强制性操作
    rabbitMQ高可用
    服务器TIME_WAIT和CLOSE_WAIT详解和解决办法
    mysql在innodb索引下b+树的高度问题。
  • 原文地址:https://www.cnblogs.com/zhengzuozhanglina/p/5998237.html
Copyright © 2011-2022 走看看