Knockout.jsとKnockout-validationプラグインを使用しています。ユーザーが検証エラーのあるページに戻ったときに、エラーメッセージを表示します。実際にバインドされた回答を変更せずにノックアウト検証をトリガーできるかどうか誰かが知っていますか?
解決策は、showAllMessagesを呼び出すことです。ビューモデルにオブザーバブルがネストされている場合は、デフォルト値がfalseであるため、ディープグループ化を使用するようにko.validation.configureを設定してください。
例:
_viewModel.save = function()
{
var result = ko.validation.group(viewModel, {deep: true});
if (!viewModel.isValid())
{
alert("Please fix all errors before preceding");
result.showAllMessages(true);
return false;
}
//actually save stuff, call ajax, submit form, etc
}
_
または、!viewModel.isValid()
をresult().length > 0
に置き換えることもできます