我是淘汰赛的新手,并试图锻炼如何使用验证。我们有以下代码 -
var MyObjectModel = function(myObject){
var self = this;
self.myNumber = ko.observable(myObject.number).trimmed();
self.myNumber.extend({
minLength: {
params: 7,
message: "My Number is too short."
},
maxLength: {
params: 7,
message: "My Number is too long."
}
});
self.errors = ko.validation.group(self);
}
现在我想更改代码,以便myObject.number的长度要么恰好为7,要么字段应为空。我该如何进行此更改?
任何帮助将不胜感激。如果您认为某些事情不明确,请告诉我,以便我详细说明。
答案 0 :(得分:3)
您可以使用自定义模式:
var MyObjectModel = function(myObject){
var self = this;
self.myNumber = ko.observable(myObject.number).trimmed();
self.myNumber.extend({
pattern: {
params: '^[0-9]{7}$|^$',
message: "My Number must have 7 chars or stay empty."
}
});
self.errors = ko.validation.group(self);
}