Захват нажатия на вкладку в pre tag работает странным образом
Я хочу поймать щелчок на вкладке и вставить пробел.
Я добавил предупреждение в код, чтобы проверить определенное значение, и, возможно, знаю, почему оно не работает для меня, а затем я обнаружил, что код с предупреждением работает и без предупреждения не работает. Почему нет и как я могу это исправить?
Это работает для меня:
$('pre').keydown(function (e) {
var keyCode = e.keyCode || e.which;
if (keyCode == 9) {
alert('test');
e.preventDefault();
$(this).val($(this).val() + '\t');
}
});
Это не работает:
$('pre').keydown(function (e) {
var keyCode = e.keyCode || e.which;
if (keyCode == 9) {
e.preventDefault();
$(this).val($(this).val() + '\t');
}
});
1 ответ
Что такое "предварительно"? Это класс или идентификатор? Если это класс то ставь .pre
или если это id, то добавьте #pre
,
$('#pre').keydown(function (e) {
var keyCode = e.keyCode || e.which;
if (keyCode == 9) {
alert('test');
e.preventDefault();
$(this).val($(this).val() + '\t');
}
});
или же
$('.pre').keydown(function (e) {
var keyCode = e.keyCode || e.which;
if (keyCode == 9) {
alert('test');
e.preventDefault();
$(this).val($(this).val() + '\t');
}
});
или вы также можете использовать
$('.pre').bind('keydown',function (e) {
var keyCode = e.keyCode || e.which;
if (keyCode == 9) {
alert('test');
e.preventDefault();
$(this).val($(this).val() + '\t');
}
});