首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >AngularJS:列出所有表单错误?

AngularJS:列出所有表单错误?
EN

Stack Overflow用户
提问于 2018-05-04 01:26:01
回答 2查看 0关注 0票数 0

背景:我目前正在使用选项卡处理应用程序; 我想列出未通过验证的字段/部分,以指示用户在正确的选项卡中查找错误。

所以我试图利用form.$error这样做; 但我并没有完全理解它的工作原理。

如果内部发生验证错误ng-repeat,例如:

<div ng-repeat="url in urls" ng-form="form">
  <input name="inumber" required ng-model="url" />
  <br />
</div>

空值导致form.$error包含以下内容:

{“required”:[
  {
    “inumber”:{}
  },
  {
    “inumber”:{}
  }
] }

另一方面,如果验证错误发生在此之外ng-repeat

<input ng-model="name" name="iname" required="true" />

form.$error对象包含以下内容:

{“required”:[{}]}

但是,我期望以下内容:

{“required”:[{'iname':{}}]}

关于为什么元素名称缺失的任何想法?

EN

回答 2

Stack Overflow用户

发布于 2018-05-04 10:20:24

<ul>
  <li ng-repeat="(key, errors) in form.$error track by $index"> <strong>{{ key }}</strong> errors
    <ul>
      <li ng-repeat="e in errors">{{ e.$name }} has an error: <strong>{{ key }}</strong>.</li>
    </ul>
  </li>
</ul>
票数 0
EN

Stack Overflow用户

发布于 2018-05-04 10:32:42

function formErrors(form){
  var errors = [];
  for(var key in form.$error){
    errors.push(key + "=" + form.$error);
  }
  if(errors.length > 0){
    console.log("Form Has Errors");
    console.log(form.$error);
  }
};
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100008360

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档