从Ag网格角度取消选择选定的行

Riy*_*iya 5 javascript ag-grid ag-grid-ng2 angular

是否有任何网格API可以以编程方式取消选择ag-grid选定的行?我试图对选定的行执行一些操作,基本上是异步操作,此后我需要从表格中取消选择该行。

Riy*_*iya 12

使用的抓取API deselectAll函数。有效 !

this.gridOptions.api.deselectAll();
Run Code Online (Sandbox Code Playgroud)


naf*_*arn 8

对于将来发现此问题的任何人:

按照 Victor 的说法,允许通过设置手动取消选择行gridOptions.rowDeselection = true

gridOptions.api.deselectAll()以编程方式取消选择使用OP 发现的所有行。

要以编程方式取消选择单行,请使用rowNode.setSelected(false)rowNode.setSelected(isSelected, clearSelection)也可用于选择行,并且如果clearSelection是,将取消选择除主题 rowNode 之外的所有行true


ade*_*hox 8

我认为这很奇怪,但设置对我来说rowDeselection不起作用true。我想要的很简单:能够在已选择行时取消选择该行。所以我检查了AG Grid 文档的行选择部分,我发现了这一点:

rowMultiSelectWithClick: ...在此模式下单击选定的行将取消选择该行。

哈!是的,这听起来正是我所需要的!但我不想多项选择...!我只想要单一选择。所以我想也许设置rowSelectionsingle可以修复它,并且选择将是单一且不可选择的。而且...是的,它有效!我最初在这样做时感到怀疑的原因是使用“row Multi SelectWithClick”和“ single rowSelection”听起来很矛盾,但它无论如何都有效,这才是真正重要的事情!:) 例如,如果您在 React 中使用它(在 Angular 或 Vanilla JavaScript 中非常相似),只需添加:

<AgGridReact
    rowSelection="single"
    rowMultiSelectWithClick={true}
    //...
>
Run Code Online (Sandbox Code Playgroud)