gpt4 book ai didi

javascript - Knockout-Validation validatedObservable 在需要使用时始终有效 :{onlyIf:. ..}

转载 作者:行者123 更新时间:2023-11-29 15:39:19 24 4
gpt4 key购买 nike

我正在使用 Knockout-Validation在我的项目中。我有模型,如果问题回答是,我需要确保提供详细信息:

function Model() {
'use strict';
var self = this;
self.question1 = ko.observable(false);
self.question1Details = ko.observable('');
self.question1Details.extend({
required: {
onlyIf: function () {
return self.question1() === true;
}
}
});
}

比起我这样使用它:

var model = ko.validatedObservable(new Model());

但无论我做什么,model.isValid() 始终为真。即使 model().question1Details.isValid() 为假。

我试着指定

ko.validation.init({ grouping : { deep: true, observable: true }, insertMessages:true }, true);

但这并没有帮助。

有趣的是,如果我将验证规则更改为:

self.question1Details.extend({
required: true
}
});

它工作正常。所以我怀疑 onlyIf 有问题,或者我用错了。

最佳答案

var self=this;
self.question1 = ko.observable(false);
self.question1Details = ko.observable('');
self.question1Details.extend({
required: {
onlyIf: function () { return self.question1()===true;}
}
});

Fiddle Demo

关于javascript - Knockout-Validation validatedObservable 在需要使用时始终有效 :{onlyIf:. ..},我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22341975/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com