За последние 24 часа нас посетили 22858 программистов и 1223 робота. Сейчас ищут 760 программистов ...

Как проверить, данные в textfield на ввод только цифр

Тема в разделе "JavaScript и AJAX", создана пользователем pr0n1x, 23 окт 2006.

  1. pr0n1x

    pr0n1x Активный пользователь

    С нами с:
    30 мар 2006
    Сообщения:
    486
    Симпатии:
    2
    Адрес:
    Киев
    Есть ли какае-то функция в JavaScript где можно проверить, что пользователь ввел только цифры от 0-9
     
  2. Anonymous

    Anonymous Guest

    Регулярные выражения.
     
  3. Davil

    Davil Guest

  4. topas

    topas Активный пользователь

    С нами с:
    16 авг 2006
    Сообщения:
    2.258
    Симпатии:
    36
    Вы чего??? Какие регулярные выражения??? Да зачем???
    существует какая-ть форма:
    Код (Text):
    1.   <input id=phone type=text onkeypress='check()'>
    Далее сама функция:
    Код (Text):
    1.   function check(){
    2.      //  Если браузер не IE, то проверку не производить.
    3.      if (!window.event) return false;
    4.  
    5.      // Проверим, нажата ли цифра
    6.      if ((window.event.keyKode >= ??) && (window.event.keyKode <= ??)){
    7.         return true;
    8.      } else {
    9.         return false;
    10.      }
    11.   }
    ИМХО должно работать... если нет, то попробовать поковырять onkeydown и onkeyup
    А для Mozilla надо написать дополнительное условие, но тоже не сложное...

    Так вот, зачем здесь регулярное выражение?
     
  5. Anonymous

    Anonymous Guest

    topas, универсальней.
     
  6. topas

    topas Активный пользователь

    С нами с:
    16 авг 2006
    Сообщения:
    2.258
    Симпатии:
    36
    Горбунов Олег, согласен, универсальнее...
    НО!!!
    Приведенный выше пример не даст ввести какие-ть символы кроме цифр, проверка же регулярнымы выражениями полезна, когда пользователь уже ввел всю строку.
    ИМХО использовать этот скрипт, а затем, если конечно есть необходимость, воспользоваться регулярным выражением :)
     
  7. vench

    vench Активный пользователь

    С нами с:
    3 май 2010
    Сообщения:
    12
    Симпатии:
    0
    Адрес:
    Россия
    Функция

    У меня есть вот такая. быть моет подойдет

    [js]

    /*
    проверяем является ли cтрока цифрой
    */
    function strIsInt(s) {
    var rflag = false;
    if(s.charAt(0) == 0) {
    var str = s.substring(1 , s.length );
    } else var str = s;

    var l = str.length;
    if(l > 0) {
    var cout = 0;
    while(cout < l) {
    rflag = true;
    if(str.charAt(cout) == "" || str.charAt(cout) == 0) {
    cout ++;
    continue;
    }
    if(!parseInt(str.charAt(cout)) ) {
    rflag = false;
    break;
    }

    cout ++;
    }

    }
    return rflag;

    }













    [/js]
     
  8. i_am_mikser22

    i_am_mikser22 Новичок

    С нами с:
    9 июн 2022
    Сообщения:
    3
    Симпатии:
    0