0

我已经使用 成功地将行合并在一起jqGrid,但我只能合并带有 id 的列。我有两个问题,如果不是太多的话。

当前工作代码:http: //jsfiddle.net/5B2Wh/38/

这是我使用的合并功能:

function Merger(gridName, CellName) {

                var mya = $("#" + gridName + "").getDataIDs();

                var length = mya.length;
                for (var i = 0; i < length; i++) {

                    var before = $("#" + gridName + "").jqGrid('getRowData', mya[i]);

                    var rowSpanTaxCount = 1;
                    for (j = i + 1; j <= length; j++) {

                        var end = $("#" + gridName + "").jqGrid('getRowData', mya[j]);
                        if (before[CellName] == end[CellName]) {
                            rowSpanTaxCount++;
                            $("#" + gridName + "").setCell(mya[j], CellName, '', {
                                display: 'none'
                            });
                        } else {
                            rowSpanTaxCount = 1;
                            break;
                        }
                        $("#" + CellName + "" + mya[i] + "").attr("rowspan", rowSpanTaxCount);
                    }
                }
            }
        });

首先: 我想问一下,有没有办法合并多选列,这样当我检查它的悬停在它上面时,合并的行也会突出显示?在 Fiddle 示例中,看起来 2007 年 10 月 2 日将仅在左列有一个复选框。

第二: 前提条件:第一个问题已完成,多选单元格被合并。如果我在第一(最左边)列中选中了一个合并的复选框,有没有办法绑定“Go”列的复选框?在 Fiddle 示例中,如果我选中了 2007 年 10 月 2 日的合并复选框,则合并单元格行跨度内“Go”列下的复选框也将被选中,就像示例 Fiddle 的当前复选框位置一样。

在此先感谢您的帮助。:)

4

1 回答 1

0

在我发布答案之前的一段时间,该答案显示了如何使用cellattr您在演示中所做的事情。的使用cellattr使网格的填充更快。

另一方面,我没有看到任何简单的方法来实现此类网格的悬停、选择和排序行为。所以我只是关闭了这些功能。

所以我对你没有好消息。我仍然没有看到任何简单的方法来实现对列中合并单元格的悬停、选择和排序。所以我只能建议你关闭这些功能。

于 2013-01-31T06:52:36.707 回答