Как разрешить пользователю вводить числа (+/-) и 1 десятичное в JSF - PullRequest
0 голосов
/ 02 октября 2019

У меня есть тег <h:inputText>, и я хочу разрешить ввод только цифр не более 1 десятичного знака.

Это позволяет использовать только цифры, но я не могу разрешить ввод только одного десятичного знака.

<h:inputText value="#{bean.someNumber}"
  size="6" styleClass="some-style"
  onkeypress="if(event.which &lt; 48 || event.which &gt; 57) return false;"
  pt:placeholder="0.0">
</h:inputText>

Я пытался добавить (event.which == 190) к атрибуту onkeypress, но не могу заставить его работать. (190 - клавиша .)

Примечание: Это попытка ограничить то, что пользователь может ввести в поле ввода, не проверяя серверную часть, которая уже работает.

Буду признателен за любую помощь.


Обновление Я попытался изменить onkeypress на pt:oninput, как показано ниже. Он допускает только цифры и 1 десятичное место, но не допускает использование знака - в качестве первого символа для отрицательных чисел.

pt:oninput="this.value = this.value.replace(/[^0-9.]/g, '').replace(/(\..*)\./g, '$1');"

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