From 08bfea183a850b29da270eac47f80b598cbe600f Mon Sep 17 00:00:00 2001 From: Vojta Jina Date: Thu, 15 Mar 2012 17:17:23 -0700 Subject: fix(forms): Set ng-valid/ng-invalid correctly --- src/directive/input.js | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/directive/input.js b/src/directive/input.js index 631e3a36..2e1c7fff 100644 --- a/src/directive/input.js +++ b/src/directive/input.js @@ -800,22 +800,21 @@ var NgModelController = ['$scope', '$exceptionHandler', '$attrs', 'ngModel', '$e if (isValid) { if ($error[validationErrorKey]) invalidCount--; - $error[validationErrorKey] = false; - toggleValidCss(isValid); if (!invalidCount) { - toggleValidCss(isValid, validationErrorKey); + toggleValidCss(true); this.$valid = true; this.$invalid = false; } } else { - if (!$error[validationErrorKey]) invalidCount++; - $error[validationErrorKey] = true; - toggleValidCss(isValid) - toggleValidCss(isValid, validationErrorKey); + toggleValidCss(false) this.$invalid = true; this.$valid = false; + invalidCount++; } + $error[validationErrorKey] = !isValid; + toggleValidCss(isValid, validationErrorKey); + parentForm.$setValidity(validationErrorKey, isValid, this); }; -- cgit v1.2.3