我正在使用 Ag-grid 生成表格,我具有单元格验证功能,该功能可以检查单元格的值。如果值不正确,我想显示一个工具提示。我已经做到了所有这些,只是工具提示不会在输入错误的单元格上显示,而是在右侧的第一个单元格上显示,而仅在此处显示。
我的代码
data.map(object => {
Object
.keys(object)
.map(key => {
let mappedColumn = {
headerName: key,
field: key,
hide: this.configurationSettings.hide,
cellRenderer: "cellEditorComponent",
pinned: null,
inputType: this.inputType,
cellStyle: (event) => { return this.cellValidation(event) },
tooltip: (event) => { return this.setErrorMessage(event) }
}
columnDefinitions.push(mappedColumn);
cellValidation(param: any) {
this.isValid=true;
if (param && param.node && !param.node.lastChild && this.validateInput && !this.validateInput.test(param.value))
{
this.isValid = false;
return { 'background-color': 'rgb(255, 230, 230)', 'border-color': 'red', 'font-weight': 'normal' }
}else if (param && param.node && param.node.lastChild && param.node.data["Consultant"] == "Planned hours")
{
return {'font-weight': 'bold'};
}
}
setErrorMessage(param: any) {
//if (param && this.cellValidation(param) != null)
if (!this.isValid) {
return this.errorMessage;
}
}
答案 0 :(得分:0)
我不知道为什么会这样,但这解决了这个问题:
setErrorMessage(param: any) {
if (param && this.cellValidation(param) != null && !this.isValid)
{ return this.errorMessage;}}