2

仅在用户单击某些按钮后才显示验证错误的最佳做法是什么?$.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>

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

4

1 回答 1

0

我会调用一个自定义变量$scope.showErrors,当用户执行操作(如按下按钮)然后设置$scope.showErrorsfalse. 然后,您的外部 div 将showErrors作为ng-show您正在执行的其他检查的补充进行检查。

于 2012-10-25T17:17:46.953 回答