То, что вы описываете, является поведением по умолчанию min/max
. Эти атрибуты используются для проверки , они не могут помешать пользователю ввести недопустимые значения. Если пользователь вводит значение больше max
, элемент управления формы становится $invalid
и $error
объект заполняется: {"max":true}
. Вы можете использовать эти значения, чтобы показать сообщение об ошибке пользователю. (Если вы хотите запретить пользователю вводить неправильное значение, тогда необходима специальная директива)
Подробнее здесь, чтобы понять, как работает проверка:
Проверьте рабочий пример с сообщениями об ошибках: DEMO
Кроме того, вы ng-change
выражение недопустимо, вы должны удалить илизамени его.