JSFiddle - React, Tailwind, and code Playground

by Sergey Aleshin

HTML

<input type="text" id="num1" placeholder="0-1000">
<input type="text" id="num2" placeholder="0-1000">
<input type="text" id="num3" placeholder="0-1000">

JavaScript

// В массиве назодятся все элементы полей
var fields = [
	document.getElementById("num1"),
  document.getElementById("num2"),
  document.getElementById("num3")
];
// перебираем массив полей и каждому вешаем обработчик, в котором будет проходить вся проверка
for(var i = 0; i < fields.length; i++) {
	fields[i].onkeyup = function() {
    // Шаблон регулярки для чисел, максимум 4 цифры, минимум 1
    var numberpattern = new RegExp(/^[0-9]{1,4}$/);
    // Если вводенное значение в поле совпадает с шаблоном, идем дальше 
    if(numberpattern.test(this.value)) {
      // Если введенное число больше 1000, очищаем поле
      if(this.value > 1000) this.value = "";
      // Или можно установить 1000
      //if(this.value > 1000) this.value = "1000";
      // Если меньше нуля, очищаем
      if(this.value < 0) this.value = "";
      // Или можно установить 0
      //if(this.value < 0) this.value = "0";
    } else { // Иначе ичищаем поле
      this.value = "";
    }
  };
}