在ag网格中,当在表中输入一些值时,我需要在input
或change
事件上接收更新的值。
但是,只有当单元格失去焦点时才会触发onCellValueChanged
,而且我无法找到立即获取值的方法。我唯一的限制-我不能添加自定义cellEditor,它需要网格默认。
能否有人,请,建议如何达到这样的行为?
发布于 2021-06-07 08:22:34
通过利用网格事件onCellKeyDown
,可以在编辑时获得单元格的当前值
https://www.ag-grid.com/javascript-grid/keyboard-navigation/#keyboard-events
var gridOptions = {
onCellKeyDown: params => {
console.log('current value', params.event.target.value)
},
}
请参阅此示例,其中显示如下:https://plnkr.co/edit/GbMglD1fxTTeSZFj
发布于 2021-06-04 11:45:17
根据银栅,您可以使用自定义回调onCellEditingStopped
。
这将在每次单元格编辑结束时触发。
直接在网格选项对象上定义它,还可以访问已编辑的值(及其行和列),如下所示:
const gridOptions = {
columnDefs: [/* whatever */],
defaultColDef: {/* whatever */},
rowData: rowData,
onCellEditingStopped: function(event) {
console.log(event);
console.log(event.oldValue); // cell's previous value
console.log(event.newValue); // cell's new value
console.log(event.column); // the column that was edited
console.log(event.data); // the row that was edited
},
};
// setup the grid after the page has finished loading
document.addEventListener('DOMContentLoaded', function() {
var gridDiv = document.querySelector('#myGrid');
new agGrid.Grid(gridDiv, gridOptions);
});
这里,您可以详细解释何时触发此onCellEditingStopped
。
您还可以检查全例。
https://stackoverflow.com/questions/57197287
复制相似问题