ngValid
An AngularJS directive to trigger a method when an input is valid (or invalid).
The problem
This inside a controller:
if (form.inputName.$valid) {
doSomething()
}
and also this:
$scope.$watch('inputName', function(value) {
if (isValid(value)) {
doSomething()
}
});
The solution
<input type="text" ng-model="inputName" ng-valid="doSomething()" required>
How to install it
bower install --save ng-valid
<script src="bower_components/angular.js"></script>
<script src="bower_components/ng-valid/dist/ng-valid.min.js"></script>
var app = angular.module('app', ['ngValid']);
How to use it
Just add the ng-valid
attribute and a method to be called when the input is valid:
<input type="text" ng-model="inputName" ng-valid="doSomething()" required>
You can also add the optional attribute ng-invalid
to invoke a method when the input is not valid:
<input type="text" ng-model="inputName" ng-valid="doSomething()" ng-invalid="doSomethingElse()" required>
License
See the LICENSE file.