我正在尝试使用knockout.validation插件.我创建了一个exampleViewModel:
function exampleViewModel() {
this.P1 = ko.observable().extend({ required : true });
this.P2 = ko.observable().extend({ required : true });
this.P3 = ko.observable().extend({ required : true });
this.P4 = ko.observable().extend({ required : true });
this.errors = ko.validation.group(this);
}
Run Code Online (Sandbox Code Playgroud)
在上面的视图模型中,我为当前对象创建了一个名为errors的验证组.现在,如果任何验证规则在4个中的任何1个属性上失败,则此属性包含错误消息.
My question is,如果我想创建一个只有4个属性的验证组,(P1, P2, P3)我将如何做到这一点?
是什么在差异ko.validation.group和ko.validatedObservable?是否有特殊情况我应该使用一个而不是另一个?
我有一个视图模型,那里有扩展为使用验证的属性。我调用 ko.validation.group(self) 但这不会将 isValid() 方法添加到视图模型。
所以我得到一个错误,即 isValid() 未定义。
这是我的代码:
var brechtbaekelandt = brechtbaekelandt || {};
brechtbaekelandt.login = (function ($, jQuery, ko, undefined) {
"use strict";
function LoginViewModel() {
var self = this;
self.userName = ko.observable();
self.password = ko.observable();
self.rememberMe = ko.observable();
self.errorMessage = ko.observable();
self.userName.extend({ required: { message: 'Please enter your username' } });
self.password.extend({ required: { message: 'Please enter your password' } });
self.errors = ko.validation.group(self);
};
LoginViewModel.prototype.login = function () {
var self = this;
self.errorMessage(null);
alert('entering login'); …Run Code Online (Sandbox Code Playgroud)