How to prevent ENTER keypress to submit a web form?

[revision 2012, no inline handler, preserve textarea enter handling]

function checkEnter(e){
 e = e || event;
 var txtArea = /textarea/i.test((e.target || e.srcElement).tagName);
 return txtArea || (e.keyCode || e.which || e.charCode || 0) !== 13;
}

Now you can define a keypress handler on the form:
<form […] onkeypress=”return checkEnter(event)”>

document.querySelector('form').onkeypress = checkEnter;

Leave a Comment