Сбросить ввод, нажав клавишу. Jquery - PullRequest
1 голос
/ 04 марта 2012

Если я наберу букву «а», я хочу сбросить ввод, однако первая буква всегда остается там. Кто-нибудь знает, как полностью очистить ввод?

Fiddle

Ответы [ 2 ]

4 голосов
/ 04 марта 2012

Вы можете использовать .preventDefault(), чтобы остановить поведение события по умолчанию, в этом случае запретить ввод a во вход.Как это:

$(document).ready(function(){
    $('#test').on('keypress', function(e){            
        if(e.which == 97) {
         e.preventDefault();            
         this.value = "";
        }           
    })
})​;

Обновил скрипку: http://jsfiddle.net/hvx6y/1/

0 голосов
/ 04 марта 2012

Используйте setTimeout (с аргументом 1 или 0), чтобы выполнить небольшой кусочек кода, который очищает ввод. Это работает, потому что код в setTimeout будет выполняться ПОСЛЕ обработки текущей нажатой клавиши.

Вы также можете предотвратить завершение обработки текущего события, как указал Кристофер Элиассон.

...