Альтернатива jQuery live () - PullRequest
0 голосов
/ 24 июля 2011

Когда ввод пуст, я хочу, чтобы он имел красный контур (чтобы пользователи знали, что он пропустил поле).

Когда вход не пустой - контура не должно быть вообще.

Проблема в том, что контур появляется только после того, как я оставил ввод пустым и щелкнул где-то еще .

Просто попробуйте стереть #input и не нажимайте .

http://jsfiddle.net/qUJ7K/

Изменение live () на blur () не помогает.

Есть идеи?

Ответы [ 2 ]

3 голосов
/ 24 июля 2011

Вы должны использовать keyup, который обозначает нажатие клавиши, которая проверяет поле ввода каждый раз, когда вы нажимаете клавишу.

Рабочая демо .

Больше информации о событиях клавиатуры:

0 голосов
/ 24 июля 2011

Используйте bind с keyup.

var $el = jQuery("#input");

$el.bind('keyup', function() {
    if ($el.val() != '') {
        $el.css('outline', '0');
    } else {
        $el.css('outline', 'solid 5px red');
    }
});

http://jsfiddle.net/qUJ7K/1/

...