У меня есть текстовое поле для ввода и обычная кнопка. Мне нужно сделать так, чтобы при нажатии клавиши Enter в этом поле автоматически срабатывала кнопка.
Особенности моей ситуации:
На странице уже есть другая submit кнопка, поэтому я не могу просто изменить тип кнопки
Enter должен работать только когда фокус находится именно в этом текстовом поле
Нужно программно вызвать событие click для конкретной кнопки
а можно еще проще - повесь onkeypress прямо в html. типа <input type="text" onkeypress="if(event.which==13) document.getElementById('searchBtn').click()" /> - отлично работает, сам так делаю когда надо быстро добавить. да, event.which устаревший, но в большинстве браузеров до сих пор пашет
Добавь event.preventDefault() для Enter - иначе форма может случайно отправиться. И лучше используй event.code === ‘Enter’ вместо key, работает надежнее с разными раскладками. У кнопки уже есть onclick?