Есть ли addEventListener для клавиши ввода?

у меня есть

 document.querySelector('#txtSearch').addEventListener('click', search_merchants); 

Я знаю, что это предназначено для {amp}lt;button{amp}gt; , но хотел знать, есть ли эквивалент для перехвата клавиши Enter .

Вы пытаетесь отправить форму?

Вместо этого послушайте событие submit .

Это обработает click и enter .

Если вы должны использовать клавишу ввода …

 document.querySelector('#txtSearch').addEventListener('keypress', function (e) { if (e.key === 'Enter') { // code for enter } }); 

Вот версия принятого в настоящее время ответа (от @Trevor) с ключом вместо keyCode:

 document.querySelector('#txtSearch').addEventListener('keypress', function (e) { if (e.key === 'Enter') { // code for enter } }); 

Вы можете прослушать событие 'keydown' а затем проверить наличие ключа ввода.

Ваш обработчик будет выглядеть так:

 function (e) { if (13 == e.keyCode) { ... do whatever ... } }