EasyUI-datagrid-自动合并单元格
来源:互联网 发布:东方证券行情软件 编辑:程序博客网 时间:2024/05/17 02:35
1.目标
1.1表格初始化完成后,已经自动合并好需要合并的行;
1.2当点击字段排序后,重新进行合并;
2.实现
2.1 引入插件
- /**
- * author ____′↘夏悸
- * create date 2012-11-5
- *
- **/
- $.extend($.fn.datagrid.methods, {
- autoMergeCells : function (jq, fields) {
- return jq.each(function () {
- var target = $(this);
- if (!fields) {
- fields = target.datagrid("getColumnFields");
- }
- var rows = target.datagrid("getRows");
- var i = 0,
- j = 0,
- temp = {};
- for (i; i < rows.length; i++) {
- var row = rows[i];
- j = 0;
- for (j; j < fields.length; j++) {
- var field = fields[j];
- var tf = temp[field];
- if (!tf) {
- tf = temp[field] = {};
- tf[row[field]] = [i];
- } else {
- var tfv = tf[row[field]];
- if (tfv) {
- tfv.push(i);
- } else {
- tfv = tf[row[field]] = [i];
- }
- }
- }
- }
- $.each(temp, function (field, colunm) {
- $.each(colunm, function () {
- var group = this;
- if (group.length > 1) {
- var before,
- after,
- megerIndex = group[0];
- for (var i = 0; i < group.length; i++) {
- before = group[i];
- after = group[i + 1];
- if (after && (after - before) == 1) {
- continue;
- }
- var rowspan = before - megerIndex + 1;
- if (rowspan > 1) {
- target.datagrid('mergeCells', {
- index : megerIndex,
- field : field,
- rowspan : rowspan
- });
- }
- if (after && (after - before) != 1) {
- megerIndex = after;
- }
- }
- }
- });
- });
- });
- }
- });
2.2html代码
- <table id="simpleDgId" style="height: 300px" />
2.3js代码
- var sortFlag = false;
- $('#simpleDgId').datagrid({
- url:"testController.do?datagrid",
- fitColumns:true,
- singleSelect:true,
- remoteSort: false,
- columns:[[
- {field:"age",title:"年龄",width:25,align:'center',sortable:true},
- {field:"userName",title:"名称",width:25,align:'center',sortable:true},
- {field:"mobilePhone",title:"手机",width:25,align:'center',sortable:true}
- ]],
- onSortColumn:function(sort, order){
- sortFlag = true;
- if("userName"==sort){
- $(this).datagrid("autoMergeCells",[sort]);
- }else{
- $(this).datagrid("autoMergeCells");
- }
- },
- onLoadSuccess: function(data){
- if(!sortFlag) $(this).datagrid("autoMergeCells");
- }
- });
阅读全文
0 0
- EasyUI-datagrid-自动合并单元格
- EasyUI-datagrid-自动合并单元格(转)
- EasyUI-datagrid-自动合并单元格(转)
- easyUI合并DataGrid单元格
- easyui datagrid合并单元格
- easyui-datagrid 合并单元格
- easyui datagrid 单元格合并
- easyui datagrid 动态合并单元格
- EasyUI Datagrid 动态合并单元格
- [easyui][datagrid]EasyUI DataGrid根据字段动态合并单元格
- jquery easyUI 中datagrid单元格的合并
- EasyUI DataGrid根据字段动态合并单元格
- EasyUI DataGrid根据字段动态合并单元格
- JQuery EasyUI DataGrid动态合并单元格
- JQuery EasyUI DataGrid动态合并单元格
- easyui-datagrid-JavaScript-导出Excel、合并单元格
- Easyui datagrid 动态合并单元格实现
- 【项目实战】---EasyUI DataGrid单元格合并
- 数据结构-栈的顺序存储和链式存储
- VS下动态库dll的显式调用(动态调用)
- 项目实战一(注释转换)
- 读取AI Challenger比赛人体骨骼关键点Json数据和场景分类Json数据
- “悉尼儿童生活”摄影比赛开幕 童眼看世界
- EasyUI-datagrid-自动合并单元格
- tasks:获取日志输出时间并进行排序
- 最大公约数,最小公倍数
- 【备忘】2017年最新整理神经网络深度学习算法全套视频教程
- Mysql学习整理(二)
- android 7.0 因为file://引起的FileUriExposedException异常
- 精选博客
- 免费wifi不能上网
- 图解TCP/IP读书笔记(三):数据链路