0

これは、この質問に対する次の質問です。

サーバー側の検証フォーム Angular.js

したがって、その答えを使用して、$setValidity を指定した各エラーに対して特定のエラーを表示するテンプレートに HTML を記述できます。たとえば、次のようなものがあります。

<input ng-model="user.lastName" required="true" id="lastNameField" name="lastName" type="text" class="span3" placeholder="Last Name"/>
<span class="inlineError" ng-show="myProfile.lastName.$error.required">Required</span>

ただし、姓に 4 文字以上の長さを追加する必要がある場合は、次のようにします。

<input ng-model="user.lastName" required="true" id="lastNameField" name="lastName" type="text" class="span3" placeholder="Last Name"/>
<span class="inlineError" ng-show="myProfile.lastName.$error.minRequired">Last name must be at least 4 characters long</span>

私の質問は、フィールドのすべてのエラーに対して汎用ハンドラーを作成するにはどうすればよいかということです。何かのようなもの:

<input ng-model="user.lastName" required="true" id="lastNameField" name="lastName" type="text" class="span3" placeholder="Last Name"/>
<span class="inlineError" ng-show="myProfile.lastName.$error.required">{{myProfile.lastName.$error.required}}</span>

それは可能ですか?

4

1 に答える 1

4

フォーム要素の有効性を示したいだけですか? 次に、次のことができます。

<span ng-show="myProfile.lastName.$invalid">Input field is invalid.</span>

より具体的にする必要がある場合は、 を使用ng-repeatしてオブジェクトを反復処理し myProfile.lastName.$error、すべてのエラーを表示できます。この場合、読みやすくするために、エラー名をエラー メッセージに変換する必要があります。

于 2012-09-20T00:01:30.717 に答える