Javascript 淘汰验证:isValid的计算结果始终为true
我有一个简单的敲除验证示例,我正在尝试工作,但无论出于什么原因,我的validatedObservable上的isValid()总是返回true JS:Javascript 淘汰验证:isValid的计算结果始终为true,javascript,knockout.js,knockout-validation,Javascript,Knockout.js,Knockout Validation,我有一个简单的敲除验证示例,我正在尝试工作,但无论出于什么原因,我的validatedObservable上的isValid()总是返回true JS: var vm = function () { self = this; self.val1 = ko.observable('').extend({ required: true }); self.val2 = ko.observable('').extend({ require
var vm = function () {
self = this;
self.val1 = ko.observable('').extend({
required: true
});
self.val2 = ko.observable('').extend({
required: true
});
self.valid = ko.validatedObservable(self);
self.checkValid = function () {
alert(self.valid.isValid());
}
return self;
};
ko.applyBindings(new vm());
标记:
<input type="text" id="value1" data-bind="value: val1" />
<input type="text" id="value2" data-bind="value: val2" />
<button data-bind="click: checkValid">Is it valid?</button>
它有效吗?
关于self.valid.isValid()为什么总是返回true,您有什么想法吗?您使用的是哪个版本的验证插件?因为您的代码与github的最新版本配合得很好:@nemesv您是对的,先生。我正在从cdnjs.com加载版本,看起来他们需要更新他们的版本。谢谢你抓住了!是的,cdnj版本有一个bug。在使用任何验证规则之前,您需要调用
ko.validation.registerExtenders()
:另请参阅:的可能重复项