2016-08-30 4 views
0

角度アプリの入力フィールドでカスタム検証を設定しようとしています。検証は、別のフィールドの内容に基づいているため、パターンに設定することはできません(パスワードが一致する必要があります)。Angularフォームでカスタム検証を設定するにはどうすればよいですか?

この場合、検証を行う方法はフォーム入力時のフィールドを確認することです。しかし、私はリアルタイムで妥当性をチェックし、Angularが検証を行うときに来る.ng-dirty.ng-validなどのCSSクラスを使用できるようにしたいと考えています。

私は$scope.formName.inputName.$setValidity(...)を使用しようとしましたが、私はその問題を実行中です(StackOverflowの質問here)。

AngularJSにカスタム検証を設定する別の方法がありますか?

+0

https://docs.angularjs.org/guide/forms#custom-validation –

答えて

1

述べたように、あなたが https://docs.angularjs.org/guide/forms#custom-validation をチェックする場合は、あなたが検証はいつでもあなたが入力した文字を行われている提供された例では、独自のカスタム検証を作成するディレクティブを使用することができます表示されます。

ブラウザを使用してサンプル(ユーザー名入力フィールド)を調べると、クラス(ng-not-empty ng-dirty ng-valid-parse ng-touched ng-valid ng-valid-username)オンザフライで変更されています。

フォームがある場合は、$ validプロパティのフォームをtrueまたはfalseに変更するためにこれらのクラスが考慮されます。デフォルトでは、form。$ validがfalseの場合、それを送信することはできません。

関連する問題