Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   трабл с перехватом некоторых символов в поле ввода (https://javascript.ru/forum/events/1642-trabl-s-perekhvatom-nekotorykh-simvolov-v-pole-vvoda.html)

barbiturat 27.08.2008 20:49

трабл с перехватом некоторых символов в поле ввода
 
Мне нужно сделать так, что б в поле ввода можно было вводить только определенные символы (например, только цифры). Для этого я пишу следующий код:
inputName.onKeyDown = function(e){
    var result = false
    if(/[\d]/.test(String.fromCharCode(e.charCode ? e.charCode : e.keyCode))){result = true}
    return result;
}

А как мне перехватывать такие символы, как двоеточие, или плюс? Их можно вводить только зажав shift, и обработчик в этом случае "ловит" только shift.

Kolyaj 27.08.2008 21:13

Цитата:

Сообщение от barbiturat
чтоб в поле ввода можно было вводить только определенные символы

В поле ввода можно не только с клавиатуры вводить.

Gvozd 27.08.2008 23:07

повесь на onchange функцию, которая просто бы удаляла из строки неугодные символы.
ЗЫ где-то на форуме я видел выложенную для тестирования библиоотеку, для ввода по маске

barbiturat 27.08.2008 23:33

Gvozd, обработчик должен быть именно на onKeyDown (onKeyPress). Таково задание.
Да, и мне нужна не готовая библиотека, а только лишь принцип как это дело перехватывать.

ZoNT 28.08.2008 00:10

так посмотри как там сделано и преределай под себя...

barbiturat 28.08.2008 14:32

Всё, разобрался :) Надо перехватывать именно при помощи "onKeyPress", а не "onKeyDown". Тогда все перехватывается корректно :)


Часовой пояс GMT +3, время: 00:05.