jQuery   发布时间:2022-04-19  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了jquery-ui – 如何在jqgrid分组中保留展开/折叠状态?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我在分组方法中实现了jqgrid.认情况下,我使用groupCollapse:jqgrid的true参数保持组折叠.我的网格运行良好,但是当我展开组并对列进行排序时,将重新加载整个网格,并且不会保留列的展开状态.如何在排序时保留展开状态?

解决方法

请始终写下您使用(可以使用)的jqGrid的哪个版本,以及从哪个fork( free jqGrid,商业 Guriddo jqGrid JS或版本中的旧jqGrid< = 4.7). 我开发的“免费jqGrid”可以很容易地实现您的要求.它允许使用groupCollapse作为回调函数,它返回Boolean(参见 the issue).结合onClickGroup回调或jqGridGroupingClickGroup事件,可以轻松地保持分组状态.

更新:我创建了演示https://jsfiddle.net/92da8xhq/,它演示了如何在分组网格中保持折叠状态.下面我简要介绍一下代码.该演示使用一级分组,使代码易于理解.

我在jqGrid中添加自定义collapsedGroups:{}参数.我们将使用该参数来保存折叠组的列表.我在演示中使用了collapsedGroups:{“test2”:truE}来演示我们可以在开头创建包含一些折叠组的网格.我们不使用COllapsedGroups对象的属性值.例如,属性test2的存在意味着值为test2的组具有折叠状态.

该演示使用groupingView的groupCollapse属性定义为回调函数.该函数测试该组是否在折叠组列表中(具有某些值的collapsedGroups属性)

groupingView: {
    groupField: ["name"],groupCollapse: function (options) {
        var collapsedGroups = $(this).jqGrid("getGridParam","collapsedGroups") || {};
        // options looks like { group: number,rowid: String }
        if (collapsedGroups.hasOwnProperty(options.group.value)) {
            return true;
        }
        return false;
    }
}

在展开/折叠组后,我们还会调整自定义collapsedGroups参数的属性.我们使用以下onClickGroup回调:

onClickGroup: function (hid,isCollapsed) {
    var p = $(this).jqGrid("getGridParam"),iGroup = $(this).jqGrid("getGroupHeaderIndex",hid),group = p.groupingView.groups[iGroup];

    if (p.collapsedGroups == null) {
        // be sure that the custom parameter is initialized as an empty object
        p.collapsedGroups = {};
    }
    if (isCollapsed) {
        // we place group.value in the p.collapsedGroups object as a property
        if (!p.collapsedGroups.hasOwnProperty(group.value)) {
            // create the property group.value in with some value
            p.collapsedGroups[group.value] = true;
        }
    } else if (p.collapsedGroups.hasOwnProperty(group.value)) {
        // remove group.value property from the p.collapsedGroups object
        delete p.collapsedGroups[group.value];
    }
}

大佬总结

以上是大佬教程为你收集整理的jquery-ui – 如何在jqgrid分组中保留展开/折叠状态?全部内容,希望文章能够帮你解决jquery-ui – 如何在jqgrid分组中保留展开/折叠状态?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。