मैंने अपने फॉर्म के लिए एक सत्यापन निर्देश बनाया है। यह मूल रूप से किसी अन्य फ़ील्ड के डेटा के आधार पर फ़ील्ड मान को मान्य करता है।मैं एक कोणीय सत्यापन निर्देश को चलाने के लिए कैसे मजबूर कर सकता हूं?
यह काम करता है सही :-)
मेरे समस्या यह है कि यदि सत्यापन के बाद अन्य क्षेत्र में परिवर्तन मार डाला गया था, मान्यता फिर से नहीं चलेंगे है।
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/
यह "सत्यापन" समस्या को सही नहीं करेगा, लेकिन आप 'ng-hide = "int2> int1" 'के साथ div को छुपा सकते हैं,'>' ऑपरेटर को छुपा अभिव्यक्ति में सही तरीके से सेट कर सकते हैं। – rGil