KnockoutValidation и условное обязательное правило
Я пытаюсь использовать KnockoutValidation с условными операторами. См. Следующий код:
self.transactionType = ko.observable('Option1');
self.ConditionalField = ko.observable().extend({
required: true,
onlyIf: self.transactionType = ="Option2"
});
К сожалению, это не сработает. Я хочу иметь ConditionalField
, только если transactionType
имеет значение 'Option2'
.
Каков наилучший способ использования условной проверки с помощью knockout.validation.js?
Ответы
Ответ 1
Я решил это.
Прежде всего я допустил ошибку, объявив transactiontype
после того, как я определил conditionalfield
. Конечный код, который работает, выглядит следующим образом:
self.transactionType = ko.observable("Option1");
self.conditionalField = ko.observable().extend({
required: {
onlyIf: function () {
return self.transactionType () == "Option2";
}
}
});