Вход

Просмотр полной версии : Не обрабатывать Enter,если не введен текст


Vivid
02.04.2008, 17:05
Доброго всем времени!

Есть input text, куда пользователь вводит текст, нажимает enter и фокус переносится на новое текстовое поле. Проблема в том, что если пользователь ничего не ввел, enter не должен обрабатываться. Подскажите, пожалуйста, как это грамотно сделать, т.к. что-то типо
myListener = new Object();
myListener.onKeyDown = function() {
if (Key.getCode() == Key.ENTER && txt.text.charAt(0) != newline) {
//что-нибудь делаем
} else {
//ничего не делаем
}

};
Key.addListener(myListener);
не работает. Нажимаем первый раз Enter и даже если ничего не введено, все равно выполняется код.
Заранее спасибо!

iNils
02.04.2008, 17:07
if (Key.getCode () == Key.ENTER && txt.text.length > 0) {

Vivid
02.04.2008, 17:13
Так в том-то и дело, что это работает, если нажать один раз Enter, нажимаешь второй раз, txt.text.length становится равной 1 и, соответсвенно, код уже выполняется

iNils
02.04.2008, 17:25
onKeyDown срабатывает до того, как текст заносится в текстовое поле.

Vivid
02.04.2008, 18:02
Спасибо! Вопрос закрыт