单击标题时如何在jqGrid中自动展开组?(而不仅仅是 +/- 图标)。我曾希望我可以对 onSelectRow 和 'groupingToggle' 做一些事情,但是当您选择“分组”行时,似乎不会调用 onSelectRow。
我在https://github.com/tonytomov/jqGrid/pull/350和https://github.com/tonytomov/jqGrid/pull/353看到了一些现有的拉取请求,但不确定他们发生了什么这似乎不是我看到的行为。
单击标题时如何在jqGrid中自动展开组?(而不仅仅是 +/- 图标)。我曾希望我可以对 onSelectRow 和 'groupingToggle' 做一些事情,但是当您选择“分组”行时,似乎不会调用 onSelectRow。
我在https://github.com/tonytomov/jqGrid/pull/350和https://github.com/tonytomov/jqGrid/pull/353看到了一些现有的拉取请求,但不确定他们发生了什么这似乎不是我看到的行为。
我发现这个问题很有趣,所以我创建了演示该要求的一种可能实现的演示。它使用以下简单代码:
var groupingView = $grid.jqGrid("getGridParam", "groupingView"),
plusIcon = groupingView.plusicon,
minusIcon = groupingView.minusicon;
$grid.click(function (e) {
var $target = $(e.target),
$groupHeader = $target.closest("tr.jqgroup");
if ($groupHeader.length > 0) {
if (e.target.nodeName.toLowerCase() !== "span" ||
(!$target.hasClass(plusIcon) && !$target.hasClass(minusIcon))) {
$(this).jqGrid("groupingToggle", $groupHeader.attr("id"));
return false;
}
}
});
在上面的代码中,我注册了click
事件句柄,首先在句柄内部验证点击是否在分组标题内。分组标题正在<tr>
上课"jqgroup"
。顺便说一句,id
可以在groupingToggle方法上使用。唯一需要验证的是单击不是在“+”或“-”图标上,该图标已经调用了相应 jqGrid 事件句柄中的方法。<tr>
groupid
groupingToggle