I have an input and I'd simply like to add an event listener for it to activate a function when I press enter, when the input is focused. How do I do this with pure JS?
Right now I have:
HTML:
Enter your wage:<input type="text" id="wage" value ="" size=20>
<button id="sub">Submit</button>
Javascript:
var wage = document.getElementById("wage");
wage.addEventListener("change", validate);
var btn = document.getElementById("sub");
btn.addEventListener("click", validate);
So basically the function validate() activates when I click OR change the text, but I want to call it by pressing enter.
You can use this:
Live demo here
You would need something like
wage.addEventListener('keydown', validate);
Your validate function would then need to check
event.keyCode == 13
to determine 'enter' keypress.Or with jQuery
If you change your button element to a
it will work with the enter button on your keyboard.
Here is a version of the currently accepted answer (from @MinkoGechev) with key instead of keyCode: