2010-06-15 2 views
3

У меня есть несколько inputTextBoxes, и я использую document.activeElement для обработки изменений значений тех ящиков ввода, которые вызывается функцией «change()» элемента inputBox.javascript - document.activeElement

проблема заключается в том, что я изменяю значение одного из входных ящиков, а затем выбираю в другом поле ввода ... функция получит документ. ActiveElement нового ввода и не будет работать ... как сделать функцию «знаете», что тот, который изменился, был предыдущим?

ответ

3

В обработчике change() элемента ключевое слово this будет ссылаться на элемент, который был только что изменен.

$('#foo').change(function() { 
    alert(this.id); // "foo" 
}); 
+0

Я не понимаю =/ – FernandoSBS

+0

Проблема заключается в том, что при изменении фокуса на другой объект задержка в функции заставит его думать, что «это» относится к фактически сфокусированному объекту, а не к тому, который я изменил. – FernandoSBS

0

на самом деле это сработало !!

Я изменился с:

editBoxAtual = document.activeElement; 

в

editBoxAtual = this; 

она работала невероятно хорошо! спасибо