0

いくつかの条件に基づいて表示されるフィールドを含むフォームがあります (ここでは関係ありません)。何が起こるかというと、可視性に基づいてフィールドを検証したいということです。

これまでのところ、ルール (required など) を変更または無効にすることはできませんでした。

次に例を示します。

<form>
 <input type='text' data-bind='{value : name}' />
 <span class='errorMsg' data-bind='validationMessage: name'></span>
 <input type='text' data-bind='{value : email, visible: isEmailVisible}' />
 <span class='errorMsg' data-bind='validationMessage: email'></span>
 <input type='checkbox' value='true' text='Receive an email' />
 <input type='submit' value='Send' />
</form>

私のjsには、フォームのフィールドの可視性を制御するための観察可能なプロパティを持つビューモデルがあります。チェックボックスがオンの場合、メール入力が表示され、必須になります。ただし、チェックされていない場合、検証ルールは空の電子メール入力を許可する必要があります。

私のビューモデルでは、次のようなものがあります

self.email = ko.observable().extend({ required : {message : 'Should not be empty'}});

問題は、検証ルールを変更または削除する方法です。

ありがとう

4

1 に答える 1