[AngularJS] 重置表单class ng-dirty

前端之家收集整理的这篇文章主要介绍了[AngularJS] 重置表单class ng-dirty前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

在表单提交之后,如果仅仅是清空表单数据内容,相应 inputclass 并不会改变(依然是 ng-dirty 状态),我们需要移除这些红色的 required 提示

  1. <div ng-app="myApp" ng-controller="myCtrl as ctrl">
  2. <form name="ctrl.myForm">
  3. <div><label for="email">Email</label>
  4. <input name="myInput" type="email" ng-model="ctrl.email" id="email" required></div>
  5. <div><label for="password">Password</label>
  6. <input name="myPassword" type="password" minlength="8" ng-model="ctrl.password" id="password" required></div>
  7. <div>
  8. <button ng-click="ctrl.reset()" type="button">Reset</button>
  9. </div>
  10. </form>

JavaScript 代码

  1. angular.module('myApp',[])
  2. .controller('myCtrl',myCtrl);
  3. function myCtrl(){
  4. var vm = this;
  5. vm.reset = function(){
  6. vm.myForm.$setPristine();
  7. vm.myForm.$setUntouched();
  8. vm.email = vm.password = '';
  9. }
  10. }

表单input区域必须放在 form

参考连接:Angular clear subform data and reset validation

猜你在找的Angularjs相关文章