javascript - $valid 表单属性未定义

标签 javascript angularjs validation

我已经设置了这样一个表单:

<form ng-submit="submit()" name="regDev" ng-controller="regDevCtrl"  id="Register_dev" novalidate>

      <input ng-model="dev.name" type="text" name="name" value="" id="name" class="" required/>     

      <input ng-model="dev.email" type="email" name="email" value="" id="email"  class="" required/>        

      <input ng-model="dev.phone" type="tel" name="phone" value="" id="phone" class="" required/>      

      <input ng-model="dev.tos" type="checkbox" id="tos" name="tos" class="" required/>

      <input type="submit" value="Submit" id="submit_btn" class=""/>

        </form>

当尝试访问 regDev.$valid 值时,我得到 undefined 但是我可以使用 regDev.checkValidity() 检查表单有效性并可以像这样访问字段属性:

regDev.name.validity 日志:

ValidityState {valid: false, customError: false, badInput: false, stepMismatch: false, rangeOverflow: false…}

所以我可以访问这些值,但我在任何地方都看不到这方面的文档,而且使用起来远不如其他建议的方法方便。

最佳答案

您是否正在尝试访问

regDev.$valid 

来自 Controller ?如果是这样,您应该访问它:

$scope.regDev.$valid

如果您尝试从 HTML 访问它,例如:

{{regDev.$valid}} 

应该显示变量的真实性或虚假性。

你也可以试试:

regDev.text.$valid

这应该会为您提供所需输入字段的 $valid 值。

关于javascript - $valid 表单属性未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21853054/

相关文章:

javascript - 单击按钮(包括内容)时如何将 div 替换为 textarea?

javascript - Angular ng-repeat 错误

asp.net - RegularExpressionValidator 在多行文本框(文本区域)上运行缓慢

wpf - 控件模板中的 ValidationRules

javascript - 特定方向上经过 3 点的圆弧

javascript - 为什么 PAGE CSS 不起作用?

javascript - 滑动功能不适用于我的 if 语句

javascript - 在事件内使用 $scope - 谷歌地图 api

javascript - Angular Bootstrap UI 模式未显示

php - Laravel 4 中未加载自定义验证类