Какова лучшая директива, разрешающая вставлять только положительные числа и не позволяющая вставлять минус - PullRequest
0 голосов
/ 16 апреля 2020

Я хочу разрешить только положительные числа и не допустить знак минус.

Я пробовал таким образом

   <input formControlName="order"
                            class="questionario-input-border form-control" min="0" type="number">

, но я могу вставить знак минус.

Я тоже пытался с этим

onlyNumber(event) {
const charCode = (event.which) ? event.which : event.keyCode;
this.notNumeric = false;
if (charCode > 31 && (charCode < 48 || charCode > 57)) {
  this.notNumeric = true;
  return false;
}
return true;

}

, но я не могу вводить номера с клавиатуры.

Как это исправить?

1 Ответ

0 голосов
/ 16 апреля 2020

Конечно, вы можете сделать это

метод 1: использовать регулярное выражение

<input aria-label="text input " type="text" pattern="^[-+]?([0-9](\.[0-9]+)?|[0-4][0-9](\.[0-9]+)?|50(\.[0]+)?)$">

Вы можете использовать шаблоны регулярного выражения

Здесь я включил шаблон, который принимает значения из От -50 до + 50

метод 2

добавить это, чтобы заблокировать другой текст

 oninput="this.value = this.value.replace(/regex strings or non numbers/g, '').replace(/regex for negative numbers /g, '$1')"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...