How to get the focused cell value at the time focussing on the cell by using the keyboard arrow keys
You can either get the focused cell by using
var focusedCell = gridOptions.api.getFocusedCell();
or use the onCellFocused event.
Both give you the following properties:
- rowIndex: number
- column: Column
Use the row-index to retrieve the row-node:
var row = gridOptions.api.getDisplayedRowAtIndex(rowIndex);
After that you can use those properties to retrieve the raw value of the cell:
var cellValue = gridOptions.api.getValue(colKey, row.node)
colKey
? –
Wedekind params.column.colId
–
Flashbulb I'm not sure if the API changes between UI library bindings, but this worked for me with vue:
const cellFocused = (evt) => {
const focusedCell = evt.api.getFocusedCell();
const row = evt.api.getDisplayedRowAtIndex(focusedCell.rowIndex)
const cellValue = evt.api.getValue(focusedCell.column, row)
console.log("xxx cell was value", cellValue);
};
Alex's answer might have worked in past but not now. Row.node does not exist, and colSelected is the string representation of the column Header not the Id. The simplest way to get a selected cell's value (Either upon clicking or right clicking) is:
let colSelected = params.column.colId;
let selectedCell = gridOptions.api.getFocusedCell();
let row = gridOptions.api.getDisplayedRowAtIndex(selectedCell.rowIndex);
const value = gridOptions.api.getValue(colSelected,row);
getValue
–
Demijohn The API has changed again:
AG Grid: Since 31.3 api.getValue is deprecated. Please use getCellValue instead.
and I am using the event listener, so:
const gridOptions = {
// ... your other code
onCellFocused: (event) => {
const row = event.api.getDisplayedRowAtIndex(event.rowIndex);
const cellValue = event.api.getCellValue({
rowNode: row,
colKey: event.column.colId
});
console.log('Focused cell value:', cellValue);
},
};
© 2022 - 2024 — McMap. All rights reserved.