Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Masking Script - ошибки в FF и Opera


Автор: KoLoB 25.5.2007, 23:47
Всем доброй ночи. Помогите пожалуйста рещить проблемму, над которой бьюсь уже далеко не первый час (>20). Мысли кончились, терпение тоже. Скоро буду клавиатурой избивать монитор ;)

Итак маленькое вступление и описание проблеммы.
Имееться скрипт для маски даты, телефона, времени и т.д. (см. вложение), который не даёт пользователю вводить данные отличные от маски.
Что-то типа как http://forum.vingrad.ru/forum/topic-149225.html.

В чём проблемма? В ИЕ проблемм и нареканий не возникает. В ФФ и Опере (даже последних версиях) возникает проблемма с вводом даты: если быстро нажимать клавиши (а точнее нажать клавишу не отпуская другую) вместо цифры  поле возникает Na.

Насколько я понимаю эта проблемма возникает при конвертации числового кода клавиши: NaN (Not-a-number).
Последующие ковыряния в эту сторону не дали результата...

Но... Если отлавливать события по OnKeyDown, вместо OnKeyUP проблемма исчезает. Но тогда возникает проблемма несоответствия маски (количество дозволеных символов +1, дозволены буквы в цифровых полях). 

Помогите решить данную проблемму.  Как я понимаю путей 2. Пойдет любой РАБОЧИЙ.

Заранее огромное спасибо всем!

П.С. Скрипт изначально не мой, но в него внесены мной изменения и дополнения.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)