我为我的表单创建了一个验证指令。它基本上根据来自另一个字段的数据验证字段值。
它工作完美:-)
我的问题是,如果在执行验证后其他字段发生变化,验证将不会再次运行。
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/