【问题标题】:KnockoutValidation and the conditional required ruleKnockoutValidation 和条件要求规则
【发布时间】:2012-07-29 03:10:41
【问题描述】:

我正在尝试将KnockoutValidation 与条件语句一起使用。见以下代码:

self.transactionType = ko.observable('Option1');

self.ConditionalField = ko.observable().extend({
  required: true, 
  onlyIf: self.transactionType = ="Option2"
});

不幸的是,这不起作用。我希望只有在transactionType 的值为'Option2' 时才需要ConditionalField

在 knockout.validation.js 中使用条件验证的最佳方式是什么?

【问题讨论】:

    标签: javascript knockout.js knockout-validation


    【解决方案1】:

    我已经解决了。

    首先,在定义conditionalfield 之后,我犯了声明transactiontype 的错误。有效的结束代码如下所示:

    self.transactionType = ko.observable("Option1");
    
    self.conditionalField = ko.observable().extend({
      required: {
        onlyIf: function () { 
          return self.transactionType () == "Option2";
        }
      }
    });
    

    【讨论】:

    • 嗯,据说托马斯爱迪生在发明第一个商业实用的白炽灯之前尝试了 3000 次失败。 en.wikipedia.org/wiki/Thomas_Edison#cite_note-28,但我发现您的回答同样具有启发性...谢谢 & + 1
    • 遗憾的是,只有在任何地方都没有记录的情况下。谢谢!
    • 真的很有用。感谢您花时间回复您自己的答案。谢谢!
    • 同意! 3 年后仍然有用!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-25
    • 2013-04-24
    • 1970-01-01
    • 2017-04-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多