0

検証ライブラリ [Knockout Validation][1] を Knockout 2 で使用しています。ただし、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);

いずれの場合も、上記の個々のプロパティ (ゲーム 1、ゲーム 2 など) は、グループ関数によって返されるエラーで追跡されません。ただし、検証エラーは UI に表示されます。現在、DOM にクエリを実行して、ユーザーが検証エラーを発生させたかどうかを確認する必要があります。これを機能させる方法はありますか?

4

1 に答える 1

0

have you tried?

viewModel.errors = ko.validation.group(viewModel.Games, { deep: true });
于 2012-11-06T16:39:12.177 に答える