Jak mogę wymusić uruchomienie dyrektywy walidacji kątowej?

Stworzyłem dyrektywę walidacji dla mojego formularza. W zasadzie sprawdza wartość pól na podstawie danych z innego pola.

To działa idealnie :-)

Moim problemem jest to, że jeśli inne pole zmieni się po wykonaniu walidacji, walidacja nie zostanie uruchomiona ponownie.

var myApp = angular.module('myApp', [])

.directive('validateInteger', function() {
  return {
    require: 'ngModel',
    link: function(scope, elm, attrs, ctrl) {
      ctrl.$parsers.unshift(function(viewValue) {
          var int1val = scope.int1;
          scope.int2valid = (viewValue > int1val) ? "valid" : undefined;
          if (scope.int2valid == "valid") {
              ctrl.$setValidity('higher', true);
              return viewValue;
          } else {
              ctrl.$setValidity('higher', false);
              return undefined;
        }
      });
    }
  };
});

jsfiddle:http://jsfiddle.net/hanspc/vCFFQ/

questionAnswers(2)

yourAnswerToTheQuestion