无法为messageTemplate配置knockout-validation

时间:2014-05-28 14:46:44

标签: knockout.js knockout-validation

Knockout验证以黑色打印错误消息。 但我希望它符合我的风格。在我的应用程序中,我想要所有验证消息 应该是相同的风格。为此,我尝试使用配置knockout-validation 以下模板和命令。

当我绑定我的viewmodel时,我收到了下面的错误消息。我的错是什么?我错过了什么/什么步骤?

任何帮助都非常感谢。

提前致谢。

<script type="text/html" id="errMsg">
    <span class="alert-danger"
          data-bind="if: field.isModified() && !field.isValid(),
                     text: field.error, 
                     attr: { title: field.error }">*</span>
</script>
<script type="text/javascript">
    ko.validation.init({ messageTemplate: 'errMsg' });
</script>

我收到以下消息。

  

消息:多个绑定(if和text)正在尝试控制后代   绑定相同的元素。你不能在这些上使用这些绑定   相同的元素。

1 个答案:

答案 0 :(得分:0)

如果您想使用自己的Css作为验证消息,只需设置errorMessageClass配置属性。

ko.validation.init( { errorMessageClass: "yourCssClass" } );

检查文档here

根据您的错误,您可以通过将if绑定替换为visible绑定来避免错误:

<script type="text/html" id="errMsg">
    <span class="alert-danger"
          data-bind="visible: field.isModified() && !field.isValid(),
                     text: field.error, 
                     attr: { title: field.error }">*</span>
</script>