复选框上的多行选择和单击 ag-grid 中的行的单选
Multiple row selection on checkbox and single selection on clicking the row in ag-grid
我想在单击复选框单元格时执行多个 selection 行,如果我
单击它应该 select 该行的普通单元格,单击另一行将 select 该行。
到目前为止,无论我尝试过什么,我都能够在行上执行多个 selection select 或单个 select。如何基于列点击在同一网格中实现两者。
<ag-grid-angular
#agGrid
[columnDefs] = "columnDefs"
class = "ag-grid20-context content"
[rowData] = "rowData"
[rowSelection]="multiple"
[suppressRowClickSelection]= true
[enableRangeSelection]= true
[enableCellChangeFlash]= true
(rowClicked)="onRowClicked($event)"
(cellClicked)='onCellClicked($event)'
(gridReady)="onGridReady($event)"
[gridOptions]="gridOptions"
(selectionChanged) = 'onSelectionChanged($event)'>
</ag-grid-angular>
this.alertColumnDef = [
{
rowMultiSelectWithClick:true,
checkboxSelection: true,
filter: false,
width:20
},
{ headerName: 'Owner', field: 'customerId' },
{ headerName: 'Code', field: 'code' },
{ headerName: 'Description', field: 'description' },
{ headerName: 'Summary', field: 'summary' },
{ headerName: 'Severity', field: 'severity' },
{ headerName: 'Category', field: 'category' },
{ headerName: 'Alert Type', field: 'alertType' }
];
任何人都可以帮助实现,单击复选框时多个 selection 和单击行时单个 selection。
您可以在单击单元格时使用 setSelected 方法。
根据 ag-grid 文档:
This method takes two parameters:
selected: set to true to select, false to un-select.
clearSelection (optional): for selection only. If true, other nodes selection will be cleared. Use this if you do not want multi selection and want this node to be exclusively selected.
onCellClicked(params) {
params.node.setSelected(true, true);
}
我想在单击复选框单元格时执行多个 selection 行,如果我 单击它应该 select 该行的普通单元格,单击另一行将 select 该行。 到目前为止,无论我尝试过什么,我都能够在行上执行多个 selection select 或单个 select。如何基于列点击在同一网格中实现两者。
<ag-grid-angular
#agGrid
[columnDefs] = "columnDefs"
class = "ag-grid20-context content"
[rowData] = "rowData"
[rowSelection]="multiple"
[suppressRowClickSelection]= true
[enableRangeSelection]= true
[enableCellChangeFlash]= true
(rowClicked)="onRowClicked($event)"
(cellClicked)='onCellClicked($event)'
(gridReady)="onGridReady($event)"
[gridOptions]="gridOptions"
(selectionChanged) = 'onSelectionChanged($event)'>
</ag-grid-angular>
this.alertColumnDef = [
{
rowMultiSelectWithClick:true,
checkboxSelection: true,
filter: false,
width:20
},
{ headerName: 'Owner', field: 'customerId' },
{ headerName: 'Code', field: 'code' },
{ headerName: 'Description', field: 'description' },
{ headerName: 'Summary', field: 'summary' },
{ headerName: 'Severity', field: 'severity' },
{ headerName: 'Category', field: 'category' },
{ headerName: 'Alert Type', field: 'alertType' }
];
任何人都可以帮助实现,单击复选框时多个 selection 和单击行时单个 selection。
您可以在单击单元格时使用 setSelected 方法。 根据 ag-grid 文档:
This method takes two parameters: selected: set to true to select, false to un-select. clearSelection (optional): for selection only. If true, other nodes selection will be cleared. Use this if you do not want multi selection and want this node to be exclusively selected.
onCellClicked(params) {
params.node.setSelected(true, true);
}