Функция jQuery, когда текстовое поле теряет фокус

У меня есть текстовое поле, что я хочу запустить некоторый jQuery, когда текстовое поле теряет фокус, поэтому после пользовательских щелчков из текстового поля.

Я попытался сделать это

$("#textbox").focusout(function () {
    alert("hello");

});

но я получаю ошибку при высказывании, что Объект не поддерживает это свойство или метод.

Как я могу сделать это затем?

20
задан Paused until further notice. 10 July 2010 в 14:45
поделиться

2 ответа

focusout был добавлен в v1.4. Три мысли:

  1. Можно ли использовать более раннюю версию jQuery?
  2. Действительно ли в вашем поле есть текстовое поле id ?
  3. Используете ли вы также Prototype или MooTools (или что-нибудь еще, что может взять на себя $ )? В таком случае используйте режим jQuery noConflict и используйте jQuery вместо $ .

Кроме этого, он должен (работает) работать.

Вот пример (с использованием предупреждения, как и вы): http://jsfiddle.net/QzmZp/1/
и еще один пример, не использующий предупреждение (из-за этого IE7 испугался): http://jsfiddle.net/QzmZp/2/
Кто-то ранее спрашивал о версиях браузеров, я пробовал описанное выше с Chrome 5, IE6, IE7 и FF3.6; все в порядке.

Я сделал и input , и textarea , потому что не был уверен, что вы используете.

18
ответ дан 30 November 2019 в 00:00
поделиться
jQuery("#textbox").blur(function() {
  alert("hello");
});

blur - это событие, которое срабатывает, когда элемент теряет фокус. Посмотрите jQuery.blur .

РЕДАКТИРОВАТЬ

Не уверен, что это то, что вы хотите, но если вы действительно пытаетесь использовать focusout , посмотрите T. Решение Дж. Краудера . Однако для вашей ситуации событие blur может вам понадобиться, поскольку вы хотите обнаружить потерю фокуса на самом текстовом поле. focusout срабатывает, когда элемент или любой элемент внутри этого элемента теряет фокус.

12
ответ дан 30 November 2019 в 00:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: