2016-05-14 2 views
1

У меня есть одно текстовое поле ввода, которое принимает значение Year. Я использовал ng-pattern="/^[0-9]{4}$/" для ввода значения года в 4-значном значении. Но как я могу проверить год ввода между 1950 годом и нынешним годом.Как использовать угловую проверку на год?

ответ

1

Вы можете использовать input[number] с помощью min и max проверки

Plunkr

<body ng-app="app" ng-controller="Ctrl as vm"> 
    <form name="form"> 
     <input type="number" ng-model="year" name="year" min="1950" max="{{vm.currentYear}}"> <br/> 
     <span ng-if="form.year.$error.min">Year should be at least 1950</span> 
     <span ng-if="form.year.$error.max">Year can not be in the future!</span> 
    </form> 
    <script> 
     angular.module('app', []).controller("Ctrl", function() { 
     this.currentYear = new Date().getFullYear(); 
     }); 
    </script> 
    </body> 

Это установит ключ min или max$error на year в том случае, если кто-то вступает в год, который не находится в пределах этих границ.

0

Try This

$scope.currentYear = new Date().getFullYear(); 

HTML

<input type="number" ng-model="value" min="1950" max="{{currentYear}}"> 
+0

Вы забыли атрибуты 'name' и' ng-model'. Никакой проверки не произойдет без этих –

Смежные вопросы