Я не могу понять, как получить плагин Knockout Validation для проверки пользовательского выбора свойств модели представления . Однако я могу вызвать isValid()
для успешной проверки всей модели представления.
Я следил за документацией, изложенной здесь, которая охватывает сценарий, а также проверил все ответы, которые я могу найти о переполнении стека.
Мой код выглядит так:
function MyViewModel() {
var self = this;
self.myproperty = ko.observableArray().extend({ minLength: { message: 'You must specify at least one item.'} })
self.anotherproperty = ko.observable().extend({ required: { params: true, message: 'You must supply a value.'} });
self.IsEntireModelValid = function() {
if (!self.isValid()) {
self.errors.showAllMessages();
return false;
}
else {
return true;
}
self.IsAnotherPropertyValidOnly = function() {
var errors = ko.validation.group(self.anotherproperty);
if (errors.length > 0) {
errors.showAllMessages();
return false;
}
else {
return true;
}
}
Когда я вызываю self.IsAnotherPropertyValidOnly()
, переменная ошибок не содержит ошибок, но когда я вызываю self.IsEntireModelValid()
, я получаю правильный ответ.
Может ли кто-нибудь указать, что я делаю неправильно?