如何在ui网格表中只扩展一行



我在项目中使用ui网格。

我在ui网格中使用可扩展功能。

我只需要使可扩展的一行。

例如,如果我在第5行单击"+"号,然后在第2行单击"+"号,则第5行必须关闭,第2行必须展开。

知道我如何在ui网格中实现这种行为吗?

      
    

您应该使用可扩展功能中的以下api:

  • toggleRowExpansion(rowEntity)

这是一个在扩展状态更改时引发的事件,可用于拦截用户扩展另一行。

  • gridOptions.onRegisterApi

这可以在接收到关闭任何其他扩展行的事件时使用。

在您的代码中,您应该在row.isExpanded 中添加此行

toggleRowExpansion: function (rowEntity) {
// --------- COMMENT THIS LINES: ---------
// var row = grid.getRow(rowEntity);
// if (row !== null) {
// service.toggleRowExpansion(grid, row);
// }
// --------- ADD THIS LINES: ---------
var row = grid.getRow(rowEntity);
   if (row !== null) {
   var isRowExpanded = row.isExpanded || false;
   service.collapseAllRows(grid);
   if(!isRowExpanded) service.toggleRowExpansion(grid, row);
   }
}

Where函数是一个自定义函数,您可以滚动网格中的所有行,通过检查CCD_5来检查它们是否展开,并关闭每个展开的行(但显然是用户刚刚展开的行)。

正如团队在网站上所说,只是提醒一下,要注意可扩展功能仍处于阿尔法阶段。

当单击展开/折叠底部时,将主要功能覆盖为使角度UI网格强制一次仅展开一行。。

在ui-grid.js中搜索"toggleRowExpansion",然后:

PD_3

最新更新