【发布时间】:2014-12-08 14:27:52
【问题描述】:
使用淘汰赛验证我正在尝试对一个可观察数组应用一些简单的验证,以检查它至少有 n 个项目。
我创建了一个简单的测试验证规则
ko.validation.rules['minSelected'] = {
validator: function (val, minimum) {
var result = (val.length >= minimum);
console.dir(result);
return result;
},
message: 'This field requires at least {0} selected items.'
};
我将其应用于我的模型
self.contacts = ko.observableArray().extend({ minSelected: 1 });
验证器函数被调用,我可以通过console.dir() 调用看到正确的验证结果,但结果似乎不会影响验证过程。
我还尝试创建一个始终为假的验证器,它在标准 observable 上完美运行,但在 observableArray 上不起作用。
ko.validation.rules['never'] = {
validator: function (val, param) {
return false;
},
message: 'I will never be valid.'
};
self.single = ko.observable().extend({ never: 'ever' });
self.multiple = ko.observableArray().extend({ never: 'ever' });
我是否遗漏了一些关于可观察数组验证的内容?
【问题讨论】:
-
+1 写得很好的问答和分享!
标签: knockout.js knockout-validation