MVVM架构~knockoutjs系列之正则表达式使规则更灵活
几乎每种验证架构都会有正则表达式的加盟,一般地,一种验证架构首先会提供一些标准的,常用的验证规则,它们通常是数字验证,电话验证,email验证,长度验证,范围验证,日期验证等,而如果使你的验证更强大,那一定要加入正则表达式!一般叫它:Regx
下面我来说一下KnockoutJS里如何加入正则表达式
调用方法:
self.Property= ko.observable().extend({
required: true,
pattern: { params:regex正则, message: "提示信息" }
});
下面举几个例子
验证为整数,并且小数部分为2位
self.peoplePrice = ko.observable().extend({ required: true, pattern: { params: /^\d+(\.\d{2})?$/, message: "必须是数字,并且为两位小数!" } });
验证为整数,并且小数部分最多为2位
self.peoplePrice = ko.observable().extend({ required: true, pattern: { params: /^\d+[\.]?\d{0,2}$/g, message: "必须是数字,并且最多两位小数!" } });
事实上,根据上面的代码,我们还可以想出很多验证方式,可以说,有了正则表达式的加盟,让KnockoutJS的验证万能了,呵呵!