Проверка углового поля ввода 5 - PullRequest
0 голосов
/ 21 сентября 2018

Обновление: поэтому я изменил ввод на type = "text", и maxlength работает нормально, но пользователь все еще может вводить отрицательные числа и может вводить числа, не лежащие в минимальном и максимальном диапазоне.

Мне нужно проверить поле ввода типа номер таким образом, чтобы его минимальное значение было равно 1,1, максимальное значение должно быть 8,1, и допускается только 1 десятичное значение.Я использую управляемые шаблоном формы, но пользователь все еще может ввести значение больше 8,1, меньше 1,1, и он может ввести более одной десятичной цифры (мне также нужна помощь в проверке этой логики).Мое требование - не позволять пользователю нажимать кнопку сохранения, если какая-либо логика не работает.

Для разрешения только одного значения после десятичного числа, я попытался использовать maxlength, но это не работает.

Я попытался использовать следующую логику:

Component.html

<input type="number" min= "1.1" max ="8.1" #c="ngModel" [ngModel]= "myvaluefromcomponent | number:'1.1-1'" (ngModel)="myvaluefromcomponet=$event" />

<button type="button" id="save" [disabled] ="c.errors"> Save </button>

Это не работает должным образом.Пожалуйста, укажите, где я иду не так, и предложите рабочее решение этой проблемы.Спасибо

1 Ответ

0 голосов
/ 26 сентября 2018

Я наткнулся на директиву PatternValidator, и она решила мою проблему.Я могу использовать директиву для любого элемента управления следующим образом:

<input type="number" min= "1.1" max ="8.1" #c="ngModel" [pattern]="myPattern" [ngModel]= "myvaluefromcomponent"/>

<button type="button" id="save" [disabled] ="c.errors?.pattern"> Save </button>

Надеюсь, что то же самое работает и для других пользователей, ищущих реализацию такого рода

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...