我正在用角度1.x实现多级ui-grid,并且是ui-grid的新手。我的网格看起来像:网格A(可扩展的主网格) - >网格B(A的可扩展子网格) - >网格C(B的不可扩展子网格)。
问题是我无法检测何时扩展网格B的行。我能够使用以下代码检测网格A中行的展开事件:
gridApi.expandable.on.rowExpandedStateChanged(scope, function(row) {
if (row.isExpanded) {
//do something
}
});
但是,没有任何方法可以检测网格B中行的扩展。当外部网格扩展时,我填充子网格。因此,我需要知道何时加载Grid C(在网格B中的行的扩展)以便调用以获取其子网格的数据。
这是我的网格结构:
scope.gridOptions = {
expandableRowTemplate: '<div ui-grid="row.entity.subGridOptions" ui-grid-expandable class="grid" ></div>',
expandableRowScope: { subGridVariable: 'subGridScopeVariable' },
columnDefs : [ ...],
data: [
{
subGridOptions: {
expandableRowTemplate: '<div ui-grid="row.entity.subGridOptions1"></div>',
columnDefs: [...],
data: [
{
...
subGridOptions1 : {
columnDefs: [...],
data:[...]
}
}
]
}
}
]
}
请帮我检测子网格内子网格的展开事件。谢谢!
与第一个网格一样,当您定义子网格选项时添加:
onRegisterApi: function (subGridApi) {
subGridApi.expandable.on.rowExpandedStateChanged(scope, function(row) {
if (row.isExpanded) {
//do something
}
});
}