我正在尝试将KnockoutValidation用于条件语句。请参阅以下代码:
self.transactionType = ko.observable('Option1');
self.ConditionalField = ko.observable().extend({
required: true,
onlyIf: self.transactionType = ="Option2"
});
不幸的是,这不起作用。我希望ConditionalField
仅在transactionType
具有值'Option2'
时才需要{{1}}。
使用knockout.validation.js的条件验证的最佳方法是什么?
答案 0 :(得分:37)
我已经解决了。
首先,在我定义transactiontype
之后,我犯了错误的声明conditionalfield
。有效的结束代码如下所示:
self.transactionType = ko.observable("Option1");
self.conditionalField = ko.observable().extend({
required: {
onlyIf: function () {
return self.transactionType () == "Option2";
}
}
});