我很困惑用什么来进行 kendogrid 列验证和更改错误模板?
我想为不同的列显示不同的验证消息。还想更改默认错误消息的 UI。我只想以没有背景颜色的红色显示错误消息。
dataBound: (e: any): void => {
this.updateValidations(e);
}
private updateValidations(event: any): boolean {
let kendoValidator = $('#grid').kendoValidator().data('kendoValidator');
let validatorRules = {
rules: {
Col1Rule: (input) => {
if (input.attr('name') === 'Col1') {
return $.trim(input.val()) !== '';
}
},
Col2Rule: (input) => {
if (input.attr('name') === 'Col2Rule') {
return $.trim(input.val()) !== '';
}
}
},
messages: {
Col1Rule: this.col1Message,
Col2Rule: this.col2Message,
},
errorTemplate: '<span>#=message#</span>'
};
kendoValidator.setOptions(validatorRules);
return true;
}
我试过这个,它不起作用。我仍然可以看到默认验证消息警报。
我也在下面尝试过,但它不起作用
model: {
fields: {
col1: {
type: 'string',
editable: true,
nullable: false,
validation: {
required: true
message: this.col1Message
}
},
col2: {
type: 'string',
editable: true,
validation: {
required: true
message: this.col2Message
}
}
}
}
还尝试了另一件事
let input = $('<input/>');
input.attr('name', options.field);
input.attr('data-required-msg', this.col1Message);
input.width(container.width());
input.width(container.width());
input.appendTo(container);
但这也行不通。
有人可以建议这样做的正确方法吗?