Вы можете сделать:
SELECT column1, column2, column4 FROM table WHERE whatever
без получения столбца3, хотя, возможно, вы искали более общее решение?
Используйте document.activeElement
, это поддерживается во всех главных браузерах.
Ранее, если Вы пытались узнать, какое поле формы фокусируется, Вы не могли. Для эмуляции обнаружения в более старых браузерах добавьте обработчик событий "фокуса" ко всем полям и запишите сфокусированное в последний раз поле в переменной. Добавьте обработчик "размытости" для очистки переменной на событие размытости для сфокусированного в последний раз поля.
Ссылки по теме:
Как сказано JW, Вы не можете найти текущий сфокусированный элемент, по крайней мере, независимым от браузера способом. Но если Вашим приложением является IE только (некоторые...), можно найти это следующим путем:
document.activeElement
РЕДАКТИРОВАНИЕ: похоже, что IE не имел всего неправильно, в конце концов, это - часть проекта HTML5 и, кажется, поддерживается последней версией Chrome, Safari и Firefox, по крайней мере.
Just putting this here to give the solution I eventually came up with.
I created a property called document.activeInputArea, and used jQuery's HotKeys addon to trap keyboard events for arrow keys, tab and enter, and I created an event handler for clicking into input elements.
Then I adjusted the activeInputArea every time focus changed, so I could use that property to find out where I was.
It's easy to screw this up though, because if you have a bug in the system and focus isn't where you think it is, then its very hard to restore the correct focus.
Небольшой помощник, который я использовал для этих целей в Mootools:
FocusTracker = {
startFocusTracking: function() {
this.store('hasFocus', false);
this.addEvent('focus', function() { this.store('hasFocus', true); });
this.addEvent('blur', function() { this.store('hasFocus', false); });
},
hasFocus: function() {
return this.retrieve('hasFocus');
}
}
Element.implement(FocusTracker);
Таким образом, вы можете проверить, находится ли элемент в фокусе с помощью el.hasFocus ()
при условии, что startFocusTracking ()
был вызван для данного элемента.