淘汰验证 - 输入验证其他一些领域

时间:2014-01-13 21:27:05

标签: javascript knockout.js knockout-validation

我正在使用knockout validation并尝试完成应该是一个简单的用例。

我希望输入绑定到某个字段,但验证不同的字段。像这样:

<input type="text" data-bind="validationElement: referrerId, value: referrerName" />  

但似乎始终(正确)显示referrerName而非referrerId的验证错误。有没有办法让这个工作?

基本上我想要这个小提琴:

http://jsfiddle.net/W3pQt/1/

显示referrerId的错误(在小提琴中总是为空)。

1 个答案:

答案 0 :(得分:2)

http://jsfiddle.net/W3pQt/3/

我制作了一个自定义验证器,因为如果没有它,我无法弄清楚如何做到这一点。

ko.validation.rules['dependsOn'] = {
    validator: function (val, otherVal) {
        return typeof otherVal() !== "undefined";
    },
    message: 'Referrer Id must have a value: {0}'
};

ko.validation.registerExtenders();

...

this.referrerName.extend({ dependsOn: this.referrerId });

不要挂断名字&#39; dependsOn&#39;这是愚蠢的。命名事情很难。