2013-07-31 5 views
1

Мне нужно получить textarea id, который был сфокусирован, когда я нажал на другой элемент.Получить фокус textarea id после нажатия

Я использую $(':input:focus').attr('id'), но после щелчка textarea теряет фокус, и я не могу получить идентификатор textarea.

Может ли кто-нибудь помочь?

+2

Ваш HTML пожалуйста! – Konsole

ответ

0

вы можете использовать .focusout() метод:

$('#focusedItem').focusout(function() { 
    var id = $(this).attr('id'); 
}); 
+0

Спасибо! Но проблема в том, что таким образом я получаю идентификатор последней сосредоточенной текстовой области. Я имею в виду, что было бы здорово ничего не делать, если бы я щелкнул никаким текстовым полем. – hmatveev

+0

, так что если ничего не будет сфокусировано, событие focusout() даже не срабатывает :) –

+0

Нет, я имею в виду, если я фокусирую textarea, после перехода к тексту, например, и в глобальной переменной я держу идентификатор последней сфокусированной текстовой области. И когда я нажимаю на кнопку, например, я не могу различаться: был curet в textarea при щелчке или нет. – hmatveev

1

Да, вы можете держать идентификатор в глобальной переменной получил его и один проверить, что в настоящее время, которая ориентирована тип входа.

Нравится:

var areaId = $('textarea:focus').attr('id'); 

Либо использовать выше код или использовать ниже код:

var areaId = ""; 
//define this variable at the top of starting the javascript code. 
areaId = $(':input:focus').attr('id'); 

Или вы можете использовать focusout() функцию JQuery:

$(':input').focusout(function(){ 
    var id = $(this).attr('id'); 
}); 
Смежные вопросы