huanghe932 发表于 2018-5-24 08:47:23

关于jeecg链表datagrid dgtol 行合并列合并

同题目,有没有相关的demo
或者封装的原理给科普一下
我这不知道怎么实现的

huanghe932 发表于 2018-5-24 14:27:08

封装了colspan rowspan 又没有对应的java代码 实现无语

huanghe932 发表于 2018-5-25 10:25:15

1我自己用原生的做了一遍 可以用隔类型换色实现 相对应的业务(只是为了区别)
2用原生合并单元格 代码如下
$("#auditingStandardDetailList").datagrid({                 
                  onLoadSuccess: function(data){                      //data是默认的表格加载数据,包括rows和Total
                    var mark=1;                                                 //这里涉及到简单的运算,mark是计算每次需要合并的格子数
                    for (var i=1; i <data.rows.length; i++) {   //这里循环表格当前的数据
                      if (data.rows['recType'] == data.rows['recType']) {   //后一行的值与前一行的值做比较,相同就需要合并
                        mark += 1;                                          
                        $(this).datagrid('mergeCells',{
                          index: i+1-mark,               //datagrid的index,表示从第几行开始合并记住最开始需要合并的位置
                          field: 'recType',               //合并单元格的区域,就是clomun中的filed对应的列
                          rowspan:mark                   //纵向合并的格数,如果想要横向合并,就使用colspan:mark
                        });
                      }else{
                        mark=1;          //一旦前后两行的值不一样了,那么需要合并的格子数mark就需要重新计算
                      }
                    }
                  }

                });
       

huanghe932 发表于 2018-5-25 10:44:43

再贴一下用 rowStyler隔类型换色的代码
rowStyler="RowStyleChange"
//处理如果本行数据recType值于上一行数据recType值相等则样式不变,不相等则改变这个样式,每一行返回这个样式
var str='background-color:white';
function RowStyleChange(index,row){
        // var max=$('#auditingStandardDetailList').datagrid('getData').rows.length;
       if(index>0){
                //本行数据
                var row =$("#auditingStandardDetailList").datagrid('getRows');
                //上一行数据
                var row1=$("#auditingStandardDetailList").datagrid('getRows');                
                        if(row.recType!=row1.recType){                       
                                if(str=='background-color:#E9E9E9'){
                                   str='background-color:white'
                                }else if(str=='background-color:white'){
                                   str='background-color:#E9E9E9'
                                }
                        }                       
       }
        return str;       
}
页: [1]
查看完整版本: 关于jeecg链表datagrid dgtol 行合并列合并