Frameworks.suFrameworks.su Шпаргалка вебмастера

  • Главная
  • Framework Kohana
  • PHP
  • Javascript
  • CSS
  • Контакты
Главная / Javascript / Поле для ввода только цифр на jQuery

Поле для ввода только цифр на jQuery

06.07.2014 2 8736

Доброе время суток! В сегодняшней статье разберем как сделать фильтрацию в тектовом поле на jQuery.

Нам нужно запретить пользователю ввод в текстовое поле формы

<input type="text" class="num">

любых данных кроме цифр. Для этого воспользуемся библиотекой jQuery и функцией .keydown:

$(document).ready(function() {
    $("input.num").keydown(function(event) {
        // Разрешаем нажатие клавиш backspace, Del, Tab и Esc
        if ( event.keyCode == 46 || event.keyCode == 8 || event.keyCode == 9 || event.keyCode == 27 ||
             // Разрешаем выделение: Ctrl+A
            (event.keyCode == 65 && event.ctrlKey === true) ||
             // Разрешаем клавиши навигации: Home, End, Left, Right
            (event.keyCode >= 35 && event.keyCode <= 39)) {
                 return;
        }
        else {
            // Запрещаем всё, кроме клавиш цифр на основной клавиатуре, а также Num-клавиатуре
            if ((event.keyCode < 48 || event.keyCode > 57) && (event.keyCode < 96 || event.keyCode > 105 )) {
                event.preventDefault();
            }  
        }
    });
});

В данном примере ввода только цифр используются цифры не только из основной основной клавиатуры, но и цифры из дополнительной, цифровой клавиатуры, так называемой NUM-клавиатуры.

Также нельзя забывать делать проверку ввода данных на стороне сервера:

<?php
/** Чтобы проверить на стороне сервера на наличие только цифр */
if(is_numeric($_POST['input'])) {
    // проверка пройдена
}

Скачать рабочий пример

Теги:
  • jQuery
  • Валидация
  • Пример

Комментарии

  1. Jane
    Jane
    11.01.2018 11:32

    Такой вариант позволяет вводить ещё и спецсимволы :( через shift+num, а это ломает весь сценарий ;-(

    Ответить
    • Z
      Z
      15.05.2018 13:01

      $('.oform input').on('input', function () {
      if (this.value != this.value.replace(/[^0-9\.]/g, '')) {
      this.value = this.value.replace(/[^0-9\.]/g, '');
      }
      return false;
      });

      Ответить

        A PHP Error was encountered

        Severity: Warning

        Message: count(): Parameter must be an array or an object that implements Countable

        Filename: Extension/Core.php

        Line Number: 1057

Оставить комментарий Отмена

*

*

*

*

Категории

  • PHP
    • Framework Kohana
  • Javascript
  • CSS
  • Администрирование

Теги

Framework Kohana Пример jQuery Уроки CRON Установка и настройка Backup CSS3 Валидация API Bash Cache Captcha i18n Linux

Авторизация

  • Забыли пароль?
  • Регистрация

Популярные статьи

  • Находим расстояние до ближайших станции метро

    Находим расстояние до ближайших станции метро

    17.02.2017 99135
  • Регистрация и авторизация пользователей. Модуль Auth в Kohana 3.3.x

    Регистрация и авторизация пользователей. Модуль Auth в Kohana 3.3.x

    02.07.2014 40040
  • Собственная система лайков на PHP и JQuery

    Собственная система лайков на PHP и JQuery

    06.04.2015 27763
  • Javascript — сумма прописью

    Javascript — сумма прописью

    07.07.2014 18127
  • Cross-domain ajax с помощью jQuery

    Cross-domain ajax с помощью jQuery

    24.04.2015 16918
Copyright © 2014-2022 Frameworks.su. Все права защищены.