【问题标题】:Get Children of igHierarchicalGrid on 3rd Level在第三级获取 igHierarchicalGrid 的子级
【发布时间】:2018-05-18 07:52:23
【问题描述】:

我创建了一个 3 级基础架构 igHierarchicalGrid,如下所示:

我想以编程方式选择带有 ProductNumber 的第三行。我可以做到这一点直到第二级(比萨),但我无法在第三级条目中达到同样的效果。

下面是我选择披萨的代码

var parentGrid = grid.igHierarchicalGrid("rootWidget");
var row = parentGrid.rowAt(0);
grid.igHierarchicalGrid("expand", row);   
var subGrids = grid.igHierarchicalGrid("allChildren");
$(subGrids).each(function(index, subGrid) {
    $(subGrid).igGridSelection("selectRow", 0);
});

grid.igHierarchicalGrid("allChildren") 返回当前展开的行的所有子代,但它将它们作为网格元素返回,而我的问题是这些元素也是我想要展开并从中选择子代的 HierarchicalGrids。

【问题讨论】:

    标签: javascript infragistics ignite-ui iggrid


    【解决方案1】:

    igHierarchicalGrid 实例仅在根网格上。使用根网格 API,您也可以展开/折叠孩子的行。 以下是如何选择第 3 级行:

    var grid = $("#grid1");
    var parentGrid = grid.igHierarchicalGrid("rootWidget");
    var row = parentGrid.rowAt(0);
    grid.igHierarchicalGrid("expand", row, function () {
        var subGrids = grid.igHierarchicalGrid("allChildren"), currentGrid;
        if (subGrids && subGrids[0]) {
            currentGrid = $(subGrids[0]); 
            grid.igHierarchicalGrid("expand", currentGrid.igGrid("rowAt", 0), function () {
                var subGrids = grid.igHierarchicalGrid("allChildren");
                if (subGrids && subGrids[1]) {
                    $(subGrids[1]).igGridSelection("selectRow", 0);
                }
            });
        }
    });
    

    请记住,igHierarchicalGrid.expand 是异步 API,最好在展开完成后使用第三个 callback 参数来执行您的逻辑。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-04-10
      • 1970-01-01
      • 1970-01-01
      • 2019-06-17
      • 1970-01-01
      • 1970-01-01
      • 2021-07-05
      • 1970-01-01
      相关资源
      最近更新 更多