sábado, novembro 29, 2008

Como evitar o submit de um Form com a tecla Enter?

Cena comum na web: usuário está preenchendo um campo input do tipo texto, e o usuário aperta enter - provavelmente esperando mudar de campo, acaba enviando o formulário.

Caso a aplicação seja bem feita uma validação ocorrerá e nenhum dado preenchido será perdido, apenas mostrando uma mensagem de erro na tela. Infelizmente, esse não é o caso na maior parte dos sites por aí... geralmente ou o formulário é submetido incompleto mesmo ou a tela sofre um reload e todos os campos se apagam.

Felizmente, evitar a ação da tecla <enter> em um campo é extremamente simples, bastando criá-lo com o seguinte código:


<input type="text" width="50px" name="name" id="id"
onKeyPress="return !(event.keyCode==13);" />


Definindo a ação onKeyPress do campo, a cada tecla digitada será verificado por javascript se a tecla foi a (keyCode = 13) - caso seja será retornado false, evitando a ação da tecla.

Nenhum comentário: