DataGrid能否动态合并一笔订单下面的多个交易
动态 多个 合并 订单 交易 能否 下面 Datagrid
2023-09-27 14:20:05 时间
/** * 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; } } } }); }); }); } });
用法:
在datagrid的onLoadSuccess事件里面进行调用,可以实现数据加载完成后,自动合并。也可以手动调用该方法。
onLoadSuccess:function(){ //所有列进行合并操作 //$(this).datagrid("autoMergeCells"); //指定列进行合并操作 $(this).datagrid("autoMergeCells",['itemid','productid']); }
http://www.jeasyuicn.com/jquery-easyui-datagrid-the-same-continuous-column-with-extended.html
相关文章
- EF 6.x、EF Core实现dynamic动态查询和EF Core注入多个上下文实例池你知道有什么问题?
- c#关于网页内容抓取,简单爬虫的实现。包括动态,静态的
- 【BZOJ2246】[SDOI2011]迷宫探险(搜索,动态规划)
- 【BZOJ4300】绝世好题(动态规划)
- 动态生成指定函数名的函数
- 【BMS Flutter】使apply函数接受多个参数+动态绑定样式
- jquery easyui动态校验,easyui动态验证
- Objective-C多态:动态类型识别+动态绑定+动态加载
- chosen.jquery.min.js动态添加下拉内容
- ArcGIS Api For Flex 动态画点和线
- Spring项目中简单几步实现多个动态数据源(多个数据库)切换,通过maven依赖注入相关jar包,来满足不同数据库、不同数据表(不同数据源)的灵活调用
- 【loj6145】「2017 山东三轮集训 Day7」Easy 动态点分治+线段树