ノックアウト検証を使用するビューモデルに次の属性があります。そのうちの1つは、パスワードの一致を確認するためのカスタム検証です。
model.Password = ko.observable()
.extend({ required: { message: "Password is required.",
params: true,
onlyIf: function () { return model.IsCredentialsRequired(); }}
});
model.ConfirmPassword = ko.observable().
extend({ validation: { validator: mustEqual,
message: 'Passwords do not match.',
params: model.Password,
onlyIf: function () { return model.IsCredentialsRequired(); } }
});
カスタム検証関数のコード
var mustEqual = function (val, other) {
return val == other();
};
に応じ てOnlyIf
条件が正常に機能していることがわかりましたが、機能していません。なぜこれが起こっているのか誰か助けてもらえますか?カスタムルールに条件付き検証を使用できる別の方法はありますか?model.Password
model.IsCredentialsRequired()
model.ConfirmPassword
前もって感謝します