有没有办法在angularjs中实现条件ng-pattern
ng-pattern="(myForm.exipration.$dirty ? ('/^\d{2}[/]\d{4}$/') : '')"
我尝试过如上所述,但没有帮助。
答案 0 :(得分:17)
<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);
}
}
};
})();
答案 1 :(得分:8)
以下对我有用(AngularJS v1.5.11):
ng-pattern="condition ? '[A-Za-z0-9_-]{1,60}' : ''"