我无法让knockout validate在我的输入中添加错误css类。
我的配置如下:
var knockoutValidationSettings = {
insertMessages: true,
decorateElement: true,
errorMessageClass: 'error',
errorElementClass: 'error',
errorClass: 'error',
errorsAsTitle: true,
parseInputAttributes: false,
messagesOnModified: true,
decorateElementOnModified: true
};
data.vm = new vmFunc();
ko.applyBindingsWithValidation(data.vm, $('#claimsSettingsSubmodule')[0], knockoutValidationSettings);
使用适当的css类添加跨度,但输入保持不变。
输入的html看起来像这样
<input type="text" id="claims-settings-referrer-name" data-bind="value: referrerName" />
如果我这样做似乎有效
<input type="text" id="claims-settings-referrer-name" data-bind="value: referrerName, validationElement: referrerName" />
但至少可以说这不是最佳选择。
答案 0 :(得分:3)
为了使用errorElementClass
自动修饰输入元素,您需要在decorateInputElement
true
属性设置为knockoutValidationSettings
var knockoutValidationSettings = {
insertMessages: true,
decorateElement: true,
errorMessageClass: 'error',
errorElementClass: 'error',
errorClass: 'error',
errorsAsTitle: true,
parseInputAttributes: false,
messagesOnModified: true,
decorateElementOnModified: true,
decorateInputElement: true
};
decorateElementOnModified
仅与您已经注意到的validationElement
绑定一起使用。