Как ограничить ввод числовых значений в текстовом поле JavaScript

Чтобы обеспечить ввод только числовых значений в текстовое поле с помощью JavaScript, вы можете использовать различные методы. Вот несколько подходов:

  1. Использование регулярных выражений.
    Вы можете проверить введенные данные с помощью регулярных выражений, чтобы убедиться, что они содержат только числовые значения. Вот пример:

    var input = document.getElementById('textboxId');
    input.addEventListener('input', function () {
     this.value = this.value.replace(/[^0-9]/g, '');
    });
  2. Использование события «onkeypress».
    Вы также можете запретить ввод нечисловых символов, используя событие «onkeypress» и проверяя код клавиши. Вот пример:

    function restrictNonNumeric(event) {
     var keyCode = event.which ? event.which : event.keyCode;
     if (keyCode < 48 || keyCode > 57) {
       event.preventDefault();
     }
    }
    <input type="text" onkeypress="restrictNonNumeric(event)">
  3. Использование атрибута «шаблон».
    В HTML5 появился атрибут «шаблон», который позволяет вам указать шаблон регулярного выражения для проверки ввода. Вот пример:

    <input type="text" pattern="[0-9]*" title="Please enter only numeric values">

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