简体   繁体   English

Angularjs ngMessages ng-messages = {multiple。$ error}?

[英]Angularjs ngMessages ng-messages={multiple .$error}?

I'm new to angularjs and I was just wondering about what ngMessage 'ng-messages' attribute can do. 我是angularjs的新手,我只是想知道ngMessage'ng-messages'属性可以做什么。

I'm trying to display one ngMessage for multiple input[type=text] elements. 我正在尝试为多个输入[type = text]元素显示一个ngMessage。 for example: 例如:

<input type="text" id="name1" ng-model="person.name1" />
<input type="text" id="name2" ng-model="person.name2" />
<input type="text" id="name3" ng-model="person.name3" />
<input type="text" id="name4" ng-model="person.name4" />

<div id="error" 
ng-messages="person.name1.$error || 
             person.name2.$error || 
             person.name3.$error || 
             person.name4.$error"

ng-show="person.name1.$touched || 
         person.name2.$touched || 
         person.name3.$touched || 
         person.name4.$touched"
ng-include="errorMsg.html"
/>

One validation message will display for all 4 input[type=text] attribute. 将显示所有4个输入[type = text]属性的一条验证消息。

Try To use it it in the below manner:- 尝试以下面的方式使用它: -

<form name="Form_Name">
  <label>
    Enter your name:
    <input type="text"
           name="myName"
           ng-model="name"
           ng-minlength="5"
           ng-maxlength="20"
           required />
  </label>
  <pre>myForm.myName.$error = {{ myForm.myName.$error | json }}</pre>

  <div ng-messages="myForm.myName.$error" style="color:maroon" role="alert">
    <div ng-message="required">You did not enter a field</div>
    <div ng-message="minlength">Your field is too short</div>
    <div ng-message="maxlength">Your field is too long</div>
  </div>
</form>

到目前为止,我遇到的最佳解决方案是使用data-ng-form='subform' name='subform'对所需的字段进行分组,然后对messages元素进行分组: data-ng-messages='subform.$error'

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM