Is there a way to achieve conditional ng-pattern in angularjs
ng-pattern="(myForm.exipration.$dirty ? ('/^\d{2}[/]\d{4}$/') : '')"
i tried like above, but does not help.
<input ... ng-pattern="handlePatternPassword">
$scope.handlePatternPassword = (function() {
var regex = /^[A-Za-z0-9!@#$%^&*()_]{4,20}$/;
return {
test: function(value) {
if ($scope.user.isLogged) {
return (value.length > 0) ? regex.test(value) : true;
} else {
return regex.test(value);
}
}
};
})();
From https://stackoverflow.com/a/18984874/4640499.
The following worked for me (AngularJS v1.5.11):
ng-pattern="condition ? '[A-Za-z0-9_-]{1,60}' : ''"
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With