跳过脏检查某些特定元素到ng-form

时间:2015-03-24 04:24:55

标签: angularjs angularjs-directive

我有一个ng-form,它有五个输入字段,每个输入字段包含ng-model指令,现在我需要的是第四个数字输入字段不会为脏检查触发,我该如何解决?

问题:无需对表格中的某些特定元素进行脏检查。

1 个答案:

答案 0 :(得分:17)

覆盖名称字段$setDirty上定义的ngModelController方法。

创建指令no-dirty

validationApp.directive('noDirty', function () {
  return {
    require: 'ngModel',
    link: function (scope, element, attrs, ngModelCtrl) {
      // override the $setDirty method on ngModelController
      ngModelCtrl.$setDirty = angular.noop;
    }
  }
})

在标记中使用此指令

<input type="text" name="name" class="form-control" ng-model="user.name" required="" no-dirty/>

Working Plnkr