kwork banner 468x60kwork banner 728x90kwork banner 930x180skillbox banner 468x60skillbox banner 728x90skillbox banner 930x180jivo banner 468x60jivo banner 728x90jivo banner 930x180

Если вы хотите разрешить пользователям вводить только числовое значение в поле input HTML, вы можете создать регулярное выражение и проверять входное значение на соответствие с ним с помощью метода test().

Давайте посмотрим следующий пример, который применяет красный контур к текстовому полю ввода, если введенное значение не является целым или дробным числом, в противном случае применяет зеленый контур:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery Allow Only Numeric Input in HTML Text Input Field</title>
<style>
    .success{
        outline: 2px solid green;
    }
    .error{
        outline: 2px solid red;
    }
</style>
<script src="//code.jquery.com/jquery-3.5.1.min.js"></script>
<script>$(document).ready(function(){ // Определяем регулярное выражение var regex = /^\d*[.]?\d*$/; $("#myInput").on("input", function(){ // Получаем входящее значение var inputVal = $(this).val(); // Проверяем входящее значение на соответствие регулярному выражению if(regex.test(inputVal)){ $(this).removeClass("error").addClass("success"); } else{ $(this).removeClass("success").addClass("error"); } });
});
</script>
</head><body> <input type="text" id="myInput"> <p><strong>Note:</strong> This HTML text input only allow numeric keystrokes and decimal ('.')</p></body></html>

Обратите внимание, что событие ввода запускается при вводе с клавиатуры, перетаскивании мышью, автозаполнении и даже копировании и вставке. Но он не сработает, если вы вставите ту же строку или выберите и повторно введите тот же символ внутри input.

Если вы хотите разрешить ввод текста HTML только числовыми символами (0-9), используйте регулярное выражение /^\d*$/. В приведенном выше примере, если вы также хотите разрешить отрицательные значения, вы можете использовать регулярное выражение /^-?\d*[.]?\d*$/.

kwork banner 480x320kwork banner 728x90kwork banner 120x600beget banner 480x320beget banner 728x90beget banner 120x600smsc banner 480x320smsc banner 728x90smsc banner 120x600

Читайте также

Насколько публикация полезна?

Нажмите на звезду, чтобы оценить!

Средняя оценка 5 / 5. Количество оценок: 1

Оценок пока нет. Поставьте оценку первым.

Похожие посты

Как обновить страницу с помощью jQuery

Вы можете просто использовать JavaScript-метод location.reload() для обновления или перезагрузки страницы. Этот метод дополнительно принимает логический параметр true или false. Если указан параметр true, это вызывает постоянную перезагрузку страницы с сервера. Но, если установлен false (по умолчанию) или не указан, браузер может перезагрузить страницу из своего кеша. Давайте посмотрим на пример, чтобы понять, как работает…

Как изменить CSS-свойство display на none или block с помощью jQuery

Вы можете использовать jQuery-метод css(), чтобы изменить значение свойства CSS display на none, block или любое другое значение. Метод css() применяет правила стиля непосредственно к элементам, то есть к встроенным. Следующий пример изменит отображение элемента DIV при нажатии кнопки: В качестве альтернативы, если вы беспокоитесь о начальном значении свойства display элемента, но хотите переключаться между…

Как отображать и скрывать элементы div на основе раскрывающегося списка <select> в jQuery

В следующем примере показано, как отображать и скрывать элементы <div> на основе раскрывающегося списка или выбранного параметра в поле <select> с помощью jQuery-метода change() в сочетании с методами show() и hide(). Блоки <div> в этом примере по умолчанию скрыты с помощью CSS-свойства display, для которого установлено значение none.