Autor Zpráva
http
Profil
Ahoj kluci,
je možné zakázat odeslání formuláře po stisknutí enter z input type="text" ?
Chci aby se form odeslal jen přes button.

Díky za radu
Pavel
blaaablaaa
Profil
function notEnter(ev) {
    var code;
    if (!ev) var ev = window.event;
	if (ev.keyCode) code = ev.keyCode;
	else if (ev.which) code = ev.which; 
	if(code == 13) {
	   return false;
    } else {
	   return true;
	}
}
<input onkeypress='return notEnter(event);'>
http
Profil
blaaablaaa: hodnej, díky moc funguje :)
Chamurappi
Profil
Reaguji na blaaablaau:
Řádek 3 můžeš vyhodit, protože objekt event se při tomto volání předá ve všech prohlížečích stejně. Vlastnost event.keyCode funguje v případě Enteru všude spolehlivě, takže není třeba jistit ji pomocí „ev.which“.

Měla by tedy fungovat i takto zjednodušená verze:
function notEnter(ev)
{
  return (ev.keyCode != 13);
}
unlucky
Profil
děláš to kvůli antispamu<
blaaablaaa
Profil
Chamurappi:
diky moc za vysvetleni a zjedodnuseni

unlucky:
nemusi byt jen antispam - ja to mam v nekterych formularich, kdy enter simuluje funkci tab

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: