easyui-datagrid的合并单元格,只合并一列
来源:互联网 发布:win7无法安装软件 编辑:程序博客网 时间:2024/06/16 01:22
两个钟头,也许更长一点。总的来说,心情还是比较畅快的。毕竟,做出来一个问题,很可能以后会用到。闲话不多说。总结一下:
这个问题不是老板要求的,是自己想要添加的效果。
初次看文档,没弄明白到底是怎么回事儿。上网搜一下,其他人写过的。并没有看懂。不知道他们代表了什么意思。所以,陷入了僵局。可愁死我了。算了,抛开他们的方法,自己去写去。有时候就是有两种病态。总以为看别人的东西了解的快,解决问题也快。还有一种是对自己不自信。没有深入的去想这个问题。
首先了解,这个easyui-datagrid的合并单元格是在前台展示的,并且可以合并的数据需要紧挨着放置,不然没办法去合并。多说这一句,就是让你分组查询。
第二点是看懂文档,怎么去进行合并。api中提供了datagrid的megerCells方法。并提供四个参数。具体去看api。
第三个问题是,案例是怎么进行合并。通过创建一个数组,存放要合并的数据对象。调用上述方法进行合并。
上述文档流程,是案例流程。但是具体到自己身上了。需要知道的是合并需要的数组怎么获取?
循环数据,然后获取?当然是这样了。但是,获取正确的数据就成了问题了。
要记住一个问题,最后一个都是可以合并的话,需要特别注意,这一点。
不说了,贴代码:
这个不是最简单的,也不是最全面的。
不是最简单:因为还可以把数据添加到数组中的话,可以提出来,写成一个方法。还有,只是适用于此情景,这个界面。想要应用到其他的界面,需要修改。
不是最全面;这个只是合并了一个列,可以拓展到多个列。稍后去实现去。
这个问题不是老板要求的,是自己想要添加的效果。
初次看文档,没弄明白到底是怎么回事儿。上网搜一下,其他人写过的。并没有看懂。不知道他们代表了什么意思。所以,陷入了僵局。可愁死我了。算了,抛开他们的方法,自己去写去。有时候就是有两种病态。总以为看别人的东西了解的快,解决问题也快。还有一种是对自己不自信。没有深入的去想这个问题。
首先了解,这个easyui-datagrid的合并单元格是在前台展示的,并且可以合并的数据需要紧挨着放置,不然没办法去合并。多说这一句,就是让你分组查询。
第二点是看懂文档,怎么去进行合并。api中提供了datagrid的megerCells方法。并提供四个参数。具体去看api。
第三个问题是,案例是怎么进行合并。通过创建一个数组,存放要合并的数据对象。调用上述方法进行合并。
上述文档流程,是案例流程。但是具体到自己身上了。需要知道的是合并需要的数组怎么获取?
循环数据,然后获取?当然是这样了。但是,获取正确的数据就成了问题了。
要记住一个问题,最后一个都是可以合并的话,需要特别注意,这一点。
不说了,贴代码:
var productid;//创建初始化的要合并列的名称值
var rowspan=1;//初始化id相同的列只有它本身一项
var objectList=new Array();//初始化合并的项的集合
var index=0;//初始化数据下标为0
for(var i=0;i<data.rows.length;i++){
console.log(data.rows[i]);
if(data.rows[i].productid==productid){
//当这条数据的编号与上一条数据的编号一样的时候
rowspan ++;
if(i==data.rows.length-1){
var object=new Object();
object.index=index;
object.rowspan=rowspan;
objectList.push(object);
}
}else{
//这条数据与上一条数据编号不一样的时候
//1.当不一样的时候,首先判断条件是否足够合并列
if(rowspan>1){
//有相同的项,可以合并
var object=new Object();
object.index=index;
object.rowspan=rowspan;
objectList.push(object);
}
//当数据只有一条的时候,只能放弃合并了
//2.首先更新下标的值
index=i;
//3.更新id的值productid
productid=data.rows[i].productid;
//4.此时rowspan的值回归1
rowspan=1;
}
};
//输出要合并的项的list集合
console.log(objectList);
for(var i=0; i<objectList.length; i++){
$(this).datagrid('mergeCells',{
index: objectList[i].index,
field: 'productid',
rowspan: objectList[i].rowspan
});
}这个不是最简单的,也不是最全面的。
不是最简单:因为还可以把数据添加到数组中的话,可以提出来,写成一个方法。还有,只是适用于此情景,这个界面。想要应用到其他的界面,需要修改。
不是最全面;这个只是合并了一个列,可以拓展到多个列。稍后去实现去。
阅读全文
0 0
- easyui-datagrid的合并单元格,只合并一列
- easyUI合并DataGrid单元格
- easyui datagrid合并单元格
- easyui-datagrid 合并单元格
- easyui datagrid 单元格合并
- jquery easyUI 中datagrid单元格的合并
- easyui datagrid 动态合并单元格
- EasyUI Datagrid 动态合并单元格
- EasyUI-datagrid-自动合并单元格
- EasyUI 的datagrid动态加载合并单元格代码
- Easyui 中 datagrid 合并单元格的打印问题
- EasyUI DataGrid根据字段动态合并单元格
- EasyUI DataGrid根据字段动态合并单元格
- JQuery EasyUI DataGrid动态合并单元格
- JQuery EasyUI DataGrid动态合并单元格
- EasyUI-datagrid-自动合并单元格(转)
- easyui-datagrid-JavaScript-导出Excel、合并单元格
- Easyui datagrid 动态合并单元格实现
- JS获取DropDownList的value值与text值的示例代码
- Mybatis && mysql 字段名是关键字 报错
- android语音播放工具(播放的同时异步存储)
- 适配器模式
- js string 添加方法 中英文字符长度 判断时间格式
- easyui-datagrid的合并单元格,只合并一列
- 常量和变量的区别
- 【PHP】PHP5.6 缓存问题
- JS 实现金额格式化
- 总结和分析几种判断RecyclerView到达底部的方法
- TextView加下划线
- BeautifulSoup 用法和实例
- Longest Valid Parentheses
- ES6之Generate函数的next方法