Reputation: 6478
I'm trying to setup an input, such that when length == 5, it will automatically trigger a blur event. How can I do this?
This is pretty much the concept:
<input type="tel" placeholder="type here." maxlength="5" name="digits" ng-model="digits" ng-change="if (digits.length ==5) { TRIGGER BLUR};">
Thanks
Upvotes: 10
Views: 21029
Reputation: 5729
Here is a basic directive that should get you what you are looking for:
app.directive('lengthChecker', function() {
return function(scope, element, attributes) {
scope.$watch(attributes.lengthChecker, function(newVal, oldVal) {
if (newVal.length >= 5) element[0].blur();
});
};
});
Html:
<input ng-model="digits" length-checker="digits"/>
Upvotes: 8