Wie kann ich die Ausführung einer eckigen Validierungsanweisung erzwingen?

Ich habe eine Validierungsanweisung für mein Formular erstellt. Grundsätzlich validiert es einen Feldwert basierend auf Daten aus einem anderen Feld.

Es funktioniert perfekt :-)

Mein Problem ist, dass, wenn sich das andere Feld ändert, nachdem die Validierung ausgeführt wurde, die Validierung nicht erneut ausgeführt wird.

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/

Antworten auf die Frage(2)

Ihre Antwort auf die Frage