Справка по событиям JQuery focus / blur - PullRequest
0 голосов
/ 13 октября 2009
$(document).ready(function() {

    $('#username').focus(function() {
        $(this).val('');
    })
    $('#username').blur(function() {
        var l = $(this).val.length;
        if (l == 0) {
            $(this).val('Username');
        }
    })

});

То, что должен делать приведенный выше код, - это очистить значение поля ввода #username, когда оно сфокусировано, и заполнить удобное для пользователя «Имя пользователя» там, когда оно теряет фокус, если оно все еще пусто.

Вторая часть не работает (я думаю, что есть проблема с условием if, которое я использую?).

Ответы [ 2 ]

3 голосов
/ 13 октября 2009

Для второй строки вашей функции размытия попробуйте

var l = $(this).val().length;

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

3 голосов
/ 13 октября 2009

Используйте $(this).val().length вместо. $(this).val только ссылается на функцию. А атрибут length функции - это число ожидаемых аргументов, а не длина возвращаемого значения этой функции.

...