javascript - Angular 动态地将 ng-messages 设置为 name 属性

标签 javascript angularjs validation ng-messages

我动态创建输入,并希望验证每个输入,但无法将 ng-messages 属性正确设置为动态生成的字段名称属性。

<input ng-model="sub.name" name="subName{{$index}}" class="form-control" placeholder="name" required maxlength="20" />
<div class="field-error" ng-messages="form.subName{{$index}}.$error" ng-show="form.Name.$touched" role="alert">
    <div ng-message="required">Name is required.</div>
</div>

我在第二行中遇到问题,将 ng-messages 动态设置为 ng-messages。我怎样才能做到这一点?

最佳答案

访问表单对象的属性也可以使用括号来完成,这应该可以解决您的问题:

<input ng-model="sub.name" name="subName{{$index}}" class="form-control" placeholder="name" required maxlength="20" />
<div class="field-error" ng-messages="form['subName' + $index].$error" ng-show="form.Name.$touched" role="alert">
    <div ng-message="required">Name is required.</div>
</div>

关于javascript - Angular 动态地将 ng-messages 设置为 name 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31456539/

相关文章:

javascript - 将变量传递给函数 - Angular

java - 正则表达式量词语句失败

mysql - 为什么要在所需的数据库列上设置 `null: false, default: ""`?

javascript - 如何在 CSS 中将一个元素定位在另一个元素之上

javascript - 如何使用 jquery 检测所有事件?

javascript - Angular 服务缓存一个值

javascript - 使用正则表达式验证表单输入

javascript - 类型错误 : resolver is not a function

javascript - 获取用户当前位置的纬度和经度

javascript - 以 Angular 方式对最小高度属性进行动画处理