Я хочу захватить нажатие клавиши TAB, отменить действие по умолчанию и вызвать мою собственную функцию javascript.jQuery: как захватить нажатие клавиши TAB в текстовом поле
ответ
Edit: Поскольку ваш элемент динамически вставлен, вы должны использовать delegated on()
как в вашем примере, но вы должны привязать его к KeyDown события, потому как комментарии @Marc, в IE событие нажатия клавиши Безразлично «т захватить ключи не символьные:
$("#parentOfTextbox").on('keydown', '#textbox', function(e) {
var keyCode = e.keyCode || e.which;
if (keyCode == 9) {
e.preventDefault();
// call custom function here
}
});
Проверить пример here.
$('#textbox').live('keypress', function(e) {
if (e.keyCode === 9) {
e.preventDefault();
// do work
}
});
Кроме того, чтобы отменить действие по умолчанию, используйте e.preventDefault(); в первой строке функции. –
это не работает для меня в IE6 + –
@Jon, keypress не захватывает нехарактерные ключи в IE – Marc
Рабочий пример в JQuery 1.9:
$('body').on('keydown', '#textbox', function(e) {
if (e.which == 9) {
e.preventDefault();
// do your code
}
});
make 'e.preventDefault();' double, чтобы предотвратить вставку пробелов в текстовое поле , – stil
Выше приведенные методы не работают для меня, может быть, я использую староват JQuery, затем, наконец, ниже показан фрагмент кода работает - размещение только в случае, если кто-то в моем же положении
$('#textBox').live('keydown', function(e) {
if (e.keyCode == 9) {
e.preventDefault();
alert('tab');
}
});
важной частью с помощью ключа вниз на вкладке зная, что вкладка всегда будет пытаться сделать что-то уже, не забудьте «вернуться ложным» в конце.
Вот что я сделал. У меня есть функция, которая работает на .blur и функция, которая меняет местами, где мой фокус формы. В основном он добавляет вход в конец формы и отправляется туда при выполнении вычислений при размытии.
$(this).children('input[type=text]').blur(timeEntered).keydown(function (e) {
var code = e.keyCode || e.which;
if (code == "9") {
window.tabPressed = true;
// Here is the external function you want to call, let your external
// function handle all your custom code, then return false to
// prevent the tab button from doing whatever it would naturally do.
focusShift($(this));
return false;
} else {
window.tabPressed = false;
}
// This is the code i want to execute, it might be different than yours
function focusShift(trigger) {
var focalPoint = false;
if (tabPressed == true) {
console.log($(trigger).parents("td").next("td"));
focalPoint = $(trigger).parents("td").next("td");
}
if (focalPoint) {
$(focalPoint).trigger("click");
}
}
});
Попробуйте это:
$('#contra').focusout(function(){
$('#btnPassword').focus();
});
Предположим, у вас есть TextBox с Id txtName
$("[id*=txtName]").on('keydown', function(e) {
var keyCode = e.keyCode || e.which;
if (keyCode == 9) {
e.preventDefault();
alert('Tab Pressed');
}
});
- 1. Как обнаружить нажатие клавиши в текстовом поле?
- 2. Как определить нажатие клавиши Tab на C#?
- 3. Как обнаружить нажатие клавиши TAB в JComboBox?
- 4. Как проверить, было ли нажатие клавиши нажатием клавиши в текстовом поле нажатие клавиши события
- 5. Как получить нажатие клавиши TAB в поле редактирования?
- 6. Отменить нажатие клавиши в JQuery
- 7. Как вызвать событие после нажатия клавиши Tab в текстовом поле
- 8. Как захватить нажатие клавиши в Ruby?
- 9. Как захватить нажатие клавиши в Matlab uipanel
- 10. Как остановить ограничение на нажатие клавиши в текстовом поле JavaFX
- 11. Как уловить Tab нажатие клавиши ввода? (ncurses)
- 12. Как захватить нажатие клавиши ALT + C
- 13. jQuery: отправить нажатие клавиши
- 14. Как программно отправить нажатие клавиши TAB в netcf
- 15. Отключить нажатие клавиши Tab внутри редактора TinyMCE с помощью JQuery
- 16. jQuery нажатие клавиши
- 17. Имитировать нажатие клавиши без jquery
- 18. JQuery нажатие клавиши() событие получить текст
- 19. Я могу захватить TAB в jtable, но как я могу захватить SHIFT + TAB?
- 20. Элементы HTML: как я могу имитировать нажатие клавиши «tab»
- 21. Perfom action клавиши «tab» onkeyup()
- 22. Как связать <Tab> нажатие клавиши в Perl Tk?
- 23. Как отправить нажатие клавиши «TAB» в другую программу?
- 24. Как вызвать нажатие клавиши jQuery, когда пользователь фокусируется на текстовом поле?
- 25. jQuery: как захватить клавишу нажатия клавиши с помощью live()
- 26. Как я могу захватить нажатие клавиши ENTER в пакетном режиме?
- 27. В Java, что является лучшим способом захватить нажатие клавиши <tab>?
- 28. Клавиши со стрелками в текстовом поле
- 29. Как сохранить текст в текстовом поле даже после фокусировки и удалить нажатие клавиши?
- 30. JQuery: нажатие клавиши() - метка времени
это не работает для меня в IE8 = \ –
, когда я нажимаю TAB в IE6 + событие не срабатывает (оно срабатывает при любом буквенно-цифровом ключе) ... Мне нужно использовать .live ('keypress', fn) –
Если работает только с живым, возможно, вы вставляете свой текстовый элемент динамически, если элемент уже находится на странице, он будет работать, проверьте этот пример: http://jsbin.com/oguhe – CMS