Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jqgrid 单击“分组列”时,不要自动展开所有子栅格行';s展开图标_Jqgrid - Fatal编程技术网

Jqgrid 单击“分组列”时,不要自动展开所有子栅格行';s展开图标

Jqgrid 单击“分组列”时,不要自动展开所有子栅格行';s展开图标,jqgrid,Jqgrid,分组后,是否有方法使当前行的展开/折叠图标不会自动展开/折叠子网格的所有行?别管它了 var parmColumnName = 'Model'; $('#test').jqGrid('groupingGroupBy'), parmColumnName, { groupCollapse: true, groupField: ['name'] } ); //在使用它之后,使用原始设置。(参见宝马下的X5) //折叠分组生成 //然后展开分组的

分组后,是否有方法使当前行的展开/折叠图标不会自动展开/折叠子网格的所有行?别管它了

var parmColumnName = 'Model';

$('#test').jqGrid('groupingGroupBy'), 
   parmColumnName, 
   {
       groupCollapse: true,
       groupField: ['name']
   }
);
//在使用它之后,使用原始设置。(参见宝马下的X5)

//折叠分组生成

//然后展开分组的Make(默认情况下,所有模型都展开,我不希望它更改,我希望它看起来像上面的原始快照)


我觉得你的问题很有趣,但解决这个问题并不容易。在我看来,两种jqGrid方法
groupingRender
的源代码,尤其是
groupingToggle
的源代码应该更改。我建议您可以在演示中看到的解决方案。演示将覆盖
groupingRender
groupingToggle
方法的原始代码。下面将详细介绍我的建议

首先,我想用我的话来描述这个问题。你在问题的正文中使用了“子网格的行”这个词,这会引起误解。您使用的是多级分组。我认为第一个问题是期权的行为。在多级分组的情况下,jqGrid崩溃当前只有数据,而不是直到顶层的所有分组头。使用三级分组和选项
groupCollapse:true
。它很难播放

而不是直觉上的预期

你在问题中提出的另一个问题是当前的消费行为。问题是,如果用户将节点折叠到所有节点看起来都很紧凑,如我发布的最后一张图片所示,那么用户展开某个节点jqGrid展开节点的所有子节点分组头,直到数据。因此,如果一个节点仅展开,例如“test1”节点,则其所有子节点都将展开,而不是仅展开下一个分组级别

为了解决第一个问题(尽管
groupCollapse:true
,但打开了子分组标题),我更改了

str+=“icon+$.jgrid.template(grp.groupText[n.idx],gv,n.cnt,n.summary)+”;

str+=“icon+$.jgrid.template(grp.groupText[n.idx],gv,n.cnt,n.summary)+”;
你问的主要问题有点难。在下面,您可以找到的固定版本

$.jgrid.extend({
groupingToggle:函数(hid){
这个。每个(函数(){
var$t=这个,
grp=$t.p.groupingView,
strpos=隐藏分割(“uU”),
uidpos,
//uid=hid.子字符串(0,strps+1),
num=parseInt(strpos[strpos.length-2],10);
标准拼接(标准拼接长度-2,2);
var uid=strpos.join(“”),
减=grp.minusicon,
plus=grp.plusicon,
tar=$(“#”+$.jgrid.jqID(hid)),
r=tar.length?tar[0]。下一个标记:null,
tarspan=$(“#”+$.jgrid.jqID(hid)+“span.+”树包装-“+$t.p.direction),
getGroupingLevelFromClass=函数(类名){
var nums=$.map(className.split(“”),函数(项){
if(item.substring(0,uid.length+1)==uid+“389;”){
返回parseInt(item.substring(uid.length+1),10);
}
});
返回nums.length>0?nums[0]:未定义;
},
项目分组级别,
折叠=假,tspan;
if(tarspan.HASSCLASS(负)){
if(grp.showSummaryOnHide){
if(r){
while(r){
if($(r).hasClass('jqfoot')){
var lv=parseInt($(r).attr(“jqfootlevel”),10);

如果(lv我觉得你的问题很有趣,但问题的解决方案并不容易。我认为两种jqGrid方法的源代码
groupingRender
,尤其是
groupingToggle
应该更改。我建议你可以在演示中看到的解决方案。演示覆盖了
groupingRend的原始代码er
groupingToggle
方法。下面将详细介绍我的建议

首先,我想用我的话来描述这个问题。你用了“次网格的行”这个词在你的问题文本中,这会带来误解。你使用的是多级分组。在我看来,第一个问题是选项的行为。在多级分组的情况下,jqGrid崩溃当前只有数据,而不是所有分组头,直到顶层。使用三级分组和选项
groupCollapse:是的
。这是真的

而不是直觉上的预期

您在问题中提出的另一个问题是当前的扩展行为。问题是,如果用户已将节点折叠到所有节点看起来都很紧凑,如我发布的上一张图片所示,则结束,然后用户展开某个节点jqGrid展开该节点的所有子节点分组头,直到数据例如,仅扩展“test1”节点,然后将扩展其所有子节点,而不是仅扩展下一个分组级别

为了解决第一个问题(尽管
groupCollapse:true
,但打开了子分组标题),我更改了

str+=“icon+$.jgrid.template(grp.groupText[n.idx],gv,n.cnt,n.summary)+”;

str+=“icon+$.jgrid.template(grp.groupText[n.idx],gv,n.cnt,n.summary)+”;
你问的主要问题有点难。下面你可以找到

$.jgrid.extend({
分组对话: