敲除验证未应用错误 class

Knockout validation not applying error class

我已经对文本输入应用了敲除验证并且验证正确显示,但 errorMessageClass 未应用于错误消息。我假设我设置错误,但我看不到什么。

我的 HTML 只是一个简单的文本框,我应用了 validationMessage 绑定:

<div>
   Mandatory field:
</div>
<span>
   <span data-bind="validationMessage: userInput"></span>
   <input type="text" data-bind="textInput: userInput" />
</span>

我已经使用打字稿建立了一个基本的淘汰赛模型:

class MyViewModel {
    constructor(userInput: string) {        
        this.userInput(userInput);
    }

    userInput = ko.observable('').extend({
        required: {
            params: true,
            message: 'Please enter a value.'
        }
    });
}

这是设置敲除验证并应用敲除绑定的文档就绪函数:

$(function () {
    ko.validation.init({
        insertMessages: false,
        errorMessageClass: 'field-validation-error'
    });

    window.vm = new MyViewModel('Delete me');

    ko.applyBindings(window.vm);
});

我设置了 jsfiddle to replicate my problem。我显然可以手动将 class 放在跨度上,但是当我之前使用过敲除验证时,我不必这样做。我需要更改什么才能获得敲除验证以自动应用 class?

errorMessageClass 指定的 class 仅适用于自动生成的消息。您可以通过配置参数 insertMessages.

打开这些消息

看看:https://jsfiddle.net/r59dyjj0/4/