Я только начал добавлять JS-валидацию в форму регистрации, и мне нужно поле ввода имени пользователя в стиле Twitter (с использованием jQuery). Это означает, что ввод ограничен определенными символами, а другие символы даже не отображаются.
Пока у меня есть это:
jQuery(document).ready(function() {
jQuery('input#user_login').keyup(function() {
jQuery(this).val( jQuery(this).val().replace(/[^a-z0-9\_]+/i, '') );
});
});
Это решение работает, но проблема в том, что недопустимый символ появляется, пока пользователь не отпустил ключ (пожалуйста, извините за мой ужасный английский!), И событие keyup не вызывается. Символ мигает в поле ввода на секунду, а затем исчезает.
Идеальным решением было бы то, как это делает Твиттер: персонаж даже не появляется ни разу.
Как я могу это сделать ?? Думаю, мне придется каким-то образом перехватить ввод.
Спасибо!