我有一个AngularJS应用程序中的以下代码,在控制器内部,
它从ng-submit函数调用,它属于名为profileForm的表单:
它从ng-submit函数调用,它属于名为profileForm的表单:
$scope.updateProfile = function() { if($scope.profileForm.$invalid) { //error handling.. } //etc. };
在这个函数内部,有没有办法弄清楚哪些字段导致整个被称为无效?
每个输入名称的验证信息作为属性在窗体的名称范围内公开。
HTML
<form name="someForm" action="/"> <input name="username" required /> <input name="password" type="password" required /> </form>
JS
$scope.someForm.username.$valid // > false $scope.someForm.password.$error // > { required: true }
暴露的属性是$ pristine,$ dirty,$ valid,$ invalid,$ error。
如果你想迭代的错误有一些原因:
$scope.someForm.$error // > { required: [{$name: "username",$error: true /*...*/},// {$name: "password",/*..*/}] }
每个出错的规则将暴露在$ error中。
这里是一个plunkr玩http://plnkr.co/edit/zCircDauLfeMcMUSnYaO?p=preview