4

是否可以使用 Angular 1.3 的 ng-messages 并在顶部显示验证摘要以及不同字段的错误消息?

<div ng-messages="myForm.$error">
    <div ng-message="required">Need to show required error for field 1.</div>
    <div ng-message="required">Need to show required error for field 2.</div>
</div>

我怎样才能做到这一点?到目前为止,我看到的所有示例都显示了一个字段的错误消息,而不是表单中的所有字段。

我是否需要为每个字段设置多个 ng-messages 部分?

4

3 回答 3

6

我想将整个摘要块设置为一个样式。所以我最终这样做了。

<div class="error-summary" ng-show="myForm.$submitted && myForm.$invalid">
    <p ng-show="myForm.field1.$error.required">Field 1 is required.</p>
    <p ng-show="myForm.field2.$error.required">Field 2 is required.</p>
</div>

我希望使用 ng-messages 做类似的事情。

于 2015-04-03T13:54:06.070 回答
3

这个怎么样?

<div ng-messages="myForm.field1.$error">
    <div ng-message="required">Need to show required error for field 1</div>
</div>
<div ng-messages="myForm.field2.$error">
    <div ng-message="required">Need to show required error for field 2</div>
</div>
<div ng-messages="myForm.field3.$error">
    <div ng-message="required">Need to show required error for field 3</div>
</div>
于 2015-04-03T04:47:39.207 回答
1

是的,你应该有多个ng-messages. 请查看以下链接。

http://plnkr.co/edit/QgNkXKosgcArGZW7WuZO?p=preview

<form name="myForm">
  <label>Enter your name:</label>
  <br>
  <input type="text" name="myName1" ng-model="name1" required />
  <br>
  <input type="text" name="myName2" ng-model="name2" required />

  <div ng-messages="myForm.myName1.$error">
    <div ng-message="required">enter name 1</div>
  </div>
  <div ng-messages="myForm.myName2.$error">
    <div ng-message="required">enter name 2</div>
  </div>
</form>
于 2015-04-03T04:55:47.840 回答