Неизвестные события запускаются, когда я использую обработчик событий Onkeyup Javascript

У меня есть веб-страница, где я использую текстовое поле, чтобы получить имя пользователя. Я использую в нем обработчик onKeyUp для проверки ввода любых недопустимых символов, а также для проверки того, нажимает ли пользователь клавишу enter. Текстовое поле находится не внутри формы.

Ввод выглядит следующим образом:

<input type='text' id='userNameBox' onKeyUp='user.checkUserName(event);' />

Здесь user — это объект, созданный из класса JavaScript с именем User.

На веб-странице, когда я щелкаю внутри текстового поля и ввожу текст, происходит проверка.

Проблема, с которой я столкнулся, заключается в том, что у меня есть console.log в методе checkUserName. Это:

console.log('key pressed='+event.which);

Когда фокус находится в текстовом поле, периодически запускаются некоторые неизвестные события. Я продолжаю получать сообщение key pressed=252, хотя не нажимаю никаких клавиш. Что такое код 252 и почему он срабатывает сам по себе? Я попытался найти то же самое, но не смог получить никаких надлежащих результатов.

Я использую библиотеку прототипов в своем приложении.


person Sharath    schedule 21.12.2011    source источник
comment
Можете ли вы опубликовать JSFiddle этого?   -  person Josh Smith    schedule 27.12.2011


Ответы (1)


Вот полный список кодов клавиш, обратите внимание, что он зависит от браузера. http://dev.w3.org/2006/webapi/DOM-Level-3-Events/html/Note-KeyProps.html

Я бы рекомендовал не использовать event.what и использовать event.keyCode, поскольку поддержка event.what в Internet Explorer сомнительна.

person John Moses    schedule 14.08.2012