执行操作后的AngularJS表单验证

时间:2012-10-25 16:18:09

标签: angularjs

仅在用户隐藏某些按钮后才显示验证错误的最佳做法是什么? $ .pristine和$ .dirty会立即反映出来,所以做这样的事情不起作用......

<input name="email" id="email" type="email" required ng-model="user.email" placeholder="email">

<div ng-show="form.$dirty && form.email.$invalid">
    <span class="error" ng-show="form.email.$error.required">Required!</span>
    <span class="error" ng-show="form.email.$error.email">This is not a valid email.</span>
</div>

我想我可以写一些可以做到这一点的指令,但只是想知道是否有更简单的方法。

1 个答案:

答案 0 :(得分:0)

我会创建一个名为$scope.showErrors的自定义变量,当用户执行操作时(例如按下按钮),然后将$scope.showErrors设置为false。然后,除了您正在执行的其他检查之外,您的外部div将检查showErrorsng-show