$('#b').on('click', function() {
$('#in2').focus();
//setTimeout(function(){ $('#in2').focus(); },500);
});
$('#in2').on('keyup', function(event) {
console.log(event.which);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button id="b">focus</button>
<input type="text" id="in1" />
<input type="text" id="in2" />
У меня есть функция нажатия клавиши, привязанная к кнопке, где я переключаю фокус на текстовое поле #in2
в приведенном выше примере.
И у меня также есть событие нажатия клавиши, связанное с текстовым полем #in2
.
Проблема: когда я использую клавишу ввода на кнопке, вызывается событие, связанное с текстовым полем (#in2
).
Может ли кто-нибудь предложить мне какое-то решение, кроме setTimeout?