`
474904099
  • 浏览: 12065 次
  • 性别: Icon_minigender_2
  • 来自: 珠海
社区版块
存档分类
最新评论

实现jqGrid三级表头功能,支持冻结,拖动

阅读更多
基于jqGrid表格上,实现三级表头。首先,看看实现的效果





jqGrid的demo上有这样一句话Note that group header is suppored only when useColSpanStyle is false ,指出只支持useColSpanStyle 为 false的冻结,所以采用useColSpanStyle=true冻结以后会存在一些问题。

在实现三级表头的同时,也把一些问题考虑在内了,先大概说明本人修改的代码部分,附件也会把源码和三级表头代码附上,基于4.4.4版本的,上面有标注ljq的,就是本人修改的代码。

添加和修改的代码部分有:
(1)在源码setGroupHeaders方法后面加上新方法setComplexHeaders

(2)添加冻结表头添加方法: createFrozenHtable

(3)修改源码setFrozenColumns方法,支持三级表头冻结

(4)修改源码showHideCol方法,添加三级表头处理

(5)修改源码dragStart: function(i,x,y) {//当存在滚动条时,处理冻结列拖动图标问题,
如果使用了冻结功能,当表格出现横向滚动条并将滚动条拖到右边,点击冻结列的拖动,拖动图标将会是里面表头的位置。

(6)修改源码getColumnHeaderIndex方法,冻结列的拖动图标获取不正确,需要兼容冻结情况,
if (th === headers[i].el || (ts.p.frozenColumns && th.id === headers[i].el.id)) {

(7)setFrozenColumns方法里面有个$($t).bind('jqGridOnSortCol.setFrozenColumns', function (index, idxcol) {,
如果原生二级表头采用useColSpanStyle=true,点击冻结列排序按钮没显示,
在这个地方可以修改一下变量previousSelectedTh和newSelectedTh,
可以通过colModel的index方式去取name,然后通过tr的id去获取,这样会通用很多。不过附件没有处理。



下面是调用的代码:
var complexoption = {
        complexHeaders:{
                 defaultStyle:true,
                 threeLevel:[     
                 {startColumnName:"id",numberOfColumns:2,titleText:"三级表头1"},
                 {startColumnName:"name",numberOfColumns:5,titleText:"三级表头2"}
                            ],
                 twoLevel:[     
                {startColumnName:"name",numberOfColumns:2,titleText:"二级表头1"},
                {startColumnName:"total",numberOfColumns:2,titleText:"二级表头2"}
                          ]
             }
                    };
jQuery("#list").jqGrid("setComplexHeaders",complexoption);
jQuery("#list").jqGrid("setFrozenColumns");


defaultStyle为true表示默认样式,可以配置为false试试,
threeLevel指定三级表头
twoLevel指定二级表头


附件是基于源码4.4.4基础上添加的三级表头代码。在这里和大家分享一下。由于公司项目需要,开发了此功能。




  • 大小: 50.6 KB
分享到:
评论
5 楼 CrazyDream_ 2016-11-28  
如果只用二级表头就会出错!
4 楼 liloo_looli 2016-06-20  
3 楼 yingwei670010378 2014-12-19  
牛人你好 怎么继续扩展 支持四级甚至 多级呢

PS:利用jqgrid 自带设置表头时,三级以上合并时,一级表头就会往上跑  无解
2 楼 siukak 2014-11-12  
相当不错!但是支持多级就更好了
1 楼 itlangqun 2014-06-23  
厉害!

相关推荐

    jqgrid相关资料

    jqGrid是一款功能强大的JavaScript数据网格插件,广泛用于Web应用程序中展示、操作和管理大量数据。它基于jQuery库,提供了一种优雅的方式来呈现表格数据,同时支持数据的分页、排序、过滤、编辑和导入导出。下面...

    spring-boot-2.3.0.RELEASE.jar中文-英文对照文档.zip

    # 压缩文件中包含: 中文-英文对照文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文-英文对照文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    C接口函数参考手册样本.doc

    C接口函数参考手册样本.doc

    scratch少儿编程逻辑思维游戏源码-小小王国.zip

    scratch少儿编程逻辑思维游戏源码-小小王国.zip

    mysql全国区域代码表3级

    mysql全国区域代码表3级

    scratch少儿编程逻辑思维游戏源码-我的世界 地牢通关.zip

    scratch少儿编程逻辑思维游戏源码-我的世界 地牢通关.zip

    spring-boot-1.5.14.RELEASE.jar中文-英文对照文档.zip

    # 压缩文件中包含: 中文-英文对照文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文-英文对照文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    1-附件2:两个医院随访的抗抑郁药使用后主诉情况.xlsx

    两个医院随访的抗抑郁药使用后主诉情况

    一个轻量级、可移植的纯 NES 仿真器库

    一个轻量级、可移植的纯 NES 仿真器库

    spring-boot-2.4.9.jar中文文档.zip

    # 压缩文件中包含: 中文文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    spring-boot-1.5.19.RELEASE.jar中文-英文对照文档.zip

    # 压缩文件中包含: 中文-英文对照文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文-英文对照文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    scratch少儿编程逻辑思维游戏源码-像素猫3.zip

    scratch少儿编程逻辑思维游戏源码-像素猫3.zip

    自来水厂水处理系统的WinCC组态与西门子300PLC程序解析及其应用

    内容概要:本文深入探讨了自来水厂水处理系统的自动化解决方案,重点介绍了WinCC组态软件和西门子300PLC程序的具体应用。文中首先简述了自来水厂作为城市供水系统核心的作用,随后详细讲解了WinCC组态软件在实时监控和控制方面的功能,以及西门子300PLC在数据处理、控制逻辑和通信等方面的关键角色。接着,文章具体阐述了水源采集与处理、水质检测与监控、自动化控制系统三个主要环节的技术实现方式。最后,强调了西门子PLC技术在提高生产效率、实时监控与预警、优化生产流程等方面的优势。 适合人群:从事工业自动化领域的工程师和技术人员,尤其是关注水处理行业的专业人士。 使用场景及目标:适用于希望深入了解自来水厂自动化控制系统的读者,旨在帮助他们掌握WinCC组态和西门子300PLC的实际应用方法,提升水处理系统的运行效率和安全性。 其他说明:本文不仅提供了理论知识,还结合实际案例进行了解析,有助于读者更好地理解和应用相关技术。

    三菱PLC FX2N源码与STM32工控板结合的高性能工业控制解决方案

    内容概要:本文介绍了三菱PLC FX2N源码V9.x版与STM32工控板的结合,展示了其强大功能和应用场景。三菱PLC FX2N源码提供清晰的程序架构和详细的注释,支持多种指令如DECO、ENCO、SEGD,并优化了RTC时间功能。STM32工控板则支持2路高速脉冲输出、2路外部脉冲输入、2路485 Modbus RTU主从机模式等功能。两者结合为工业控制带来了更高的性能和更多样化的功能。 适合人群:从事工业自动化领域的工程师和技术人员,尤其是对三菱PLC和STM32有研究兴趣的人群。 使用场景及目标:适用于需要高效、稳定工业控制系统的设计和开发,旨在提升工业设备的精确控制能力,提高生产效率和质量。 其他说明:文中提到的具体功能和特性有助于开发者更好地理解和应用三菱PLC FX2N源码与STM32工控板的结合,推动工业自动化的发展。

    三相下垂双逆变器同步并联控制技术的研究与应用

    内容概要:本文深入探讨了三相下垂双逆变器同步并联控制技术,重点介绍了下垂控制的基本原理及其在微电网中的应用。文章详细解释了下垂控制如何通过调整频率和电压幅值来实现负载的自动分配,并讨论了在多台逆变器并联时可能出现的环流问题以及解决方案,如虚拟阻抗法。此外,还介绍了同步环节的关键技术,特别是改进型锁相环的应用,并提供了具体的实现代码示例。最后,文章分享了一些实用的调试技巧和经验,强调了参数整定的重要性。 适用人群:从事电力电子、微电网控制领域的研究人员和技术人员。 使用场景及目标:适用于希望深入了解三相下垂双逆变器同步并联控制技术的工程师和科研人员,旨在帮助他们掌握核心技术,解决实际工程中的问题。 其他说明:文中提供的代码示例和调试方法有助于读者更好地理解和应用相关技术,提高系统的稳定性和性能。

    Google Python Style

    Google Python Style

    spring-boot-1.2.5.RELEASE.jar中文-英文对照文档.zip

    # 压缩文件中包含: 中文-英文对照文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文-英文对照文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    scratch少儿编程逻辑思维游戏源码-像素竞技场.zip

    scratch少儿编程逻辑思维游戏源码-像素竞技场.zip

    scratch少儿编程逻辑思维游戏源码-星之卡比(2).zip

    scratch少儿编程逻辑思维游戏源码-星之卡比(2).zip

Global site tag (gtag.js) - Google Analytics