在Ag-Grid中,文本编辑器默认情况下不会在单击编辑器之外的任何内容时自动关闭。为了实现这一点,需要手动为文本编辑器附加一个blur事件侦听器,以便检测焦点是否已移出编辑器。
示例代码:
// 在文本编辑器中添加blur事件侦听器
var textEditorParams = {
valueSetter: function(params) {
params.data[params.colDef.field] = params.newValue;
return true;
},
isPopup: function() {
return true;
},
// 附加blur事件侦听器
getGui: function() {
var eInput = document.createElement('input');
eInput.setAttribute('type', 'text');
eInput.addEventListener('blur', function() { // 添加blur事件侦听器
params.stopEditing();
});
return eInput;
}
};
// 将文本编辑器配置应用于特定的列
gridOptions.columnDefs = [
{ headerName: 'Name', field: 'name', editable: true, cellEditor: 'text', cellEditorParams: textEditorParams },
// ...
];