我在Knockout 2中使用验证库[Knockout Validation] [1]。虽然UI正确显示了对象数组中可观察属性的验证错误。 ko.validation.group函数不跟踪这些错误。查看源代码,我看到它只检查数组对象本身的可观察性,而不是内部可观察属性。
我有一些这些
function Game(bowlerId, name, g1, g2, g3, g4) {
this.BowlerId = bowlerId;
this.Name = name;
this.Game1 = ko.observable(g1).extend({ required: true, min:1, max:300 });
this.Game2 = ko.observable(g2).extend({ required: true, min: 1, max: 300 });
this.Game3 = ko.observable(g3).extend({ required: true, min: 1, max: 300 });
this.Game4 = ko.observable(g4).extend({ required: true, min: 1, max: 300 });
}
我使用的:
viewModel.errors = ko.validation.group(viewModel.Games);
或喜欢
viewModel.errors = ko.validation.group(viewModel);
在任何一种情况下,上面的各个属性(Game1,Game2等)都不会在组函数返回的错误中被跟踪。验证错误确实出现在UI中。目前,我必须查询DOM以查看用户是否已引发验证错误。有什么方法可以让它发挥作用吗?
答案 0 :(得分:0)
viewModel.errors = ko.validation.group(viewModel.Games, { deep: true });