29

$setValidityディレクティブの要素で使用しようとしています。私が見つけたすべての例は、コントローラーに設定されているようです...

私はフォーム検証でJSフィドルをフォークし、たくさんのことを試しました。洞察をいただければ幸いです:http: //jsfiddle.net/thomporter/pmKpG/2/

フィドルでは$setValidity、コントローラーでが呼び出されます。

ctrl.$setValidity('pwd', true);

私は次のようなことをしたいと思います:

elm.$setValidity('pwd', true);

そのため、次のような形式で実行できます。

ng-class="{error:form.password.$error.pwd}"
4

1 に答える 1

60

私はそれを理解しました...あなたは入力要素に名前を持っている必要があります。名前を追加するとすぐに、エラーは必要に応じて要素に自動的にバインドされ、追加の変更は必要ありません。

<input ng-model="password"
       name="inputPassword"
       class="immediate-help"
       password-validate
       required
       type="password"
       id="inputPassword"
       placeholder="Password">

http://jsfiddle.net/thomporter/pmKpG/4/

于 2013-03-25T12:55:08.787 に答える