0

How can I make the same EventListener to trigger when pressing enter key as well on a keyboard?

<form>
  <input type="text" class="form"/>
  <button type="button" id="button" class="form">Go!</button>
</form>

let btn = document.getElementById("button");
btn.addEventListener("click", runEvent);
Zam Abdul Vahid
  • 2,389
  • 3
  • 18
  • 25
Eriks
  • 1
  • 2
    Does this answer your question? [EventListener Enter Key](https://stackoverflow.com/questions/14542062/eventlistener-enter-key) – Tom Roman Mar 11 '21 at 15:58

3 Answers3

2

Listen for the keydown event on the document (or form) and then in that event handler, check for the "Enter" key being pressed. If so, call the click event handler:

let btn = document.getElementById("button");
btn.addEventListener("click", runEvent);

document.addEventListener("keydown", function(event){
  if(event.key === "Enter"){
    runEvent();
  }
});

function runEvent(event){
  console.log("Running!");
}
<form>
  <input type="text" class="form"/>
  <button type="button" id="button" class="form">Go!</button>
</form>
Scott Marcus
  • 64,069
  • 6
  • 49
  • 71
1

Try this:

btn.addEventListener("keydown", function (e) {
    if (e.keyCode === 13) {  //This checks whether the enter key is pressed or not      
       //Your code.
    }
});
Megh Agarwal
  • 216
  • 1
  • 7
1

Use the Keydown event listener

document.addEventListener('keydown', function (e) {
    if (e.key === 'Enter') {
      runEvent();
    }
});
Tom Roman
  • 125
  • 1
  • 8