Nesse tutorial você aprenderá a pular campos ao pressionar Enter como se estivesse pressionando TAB.
Para tal, utilizaremos jQuery que é uma biblioteca JavaScript cross-browser, ou seja, funciona em vários navegadores.
<html>
<head>
<title>Pular Campos</title>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<script type="text/javascript" src="jquery-1.6.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
/* ao pressionar uma tecla em um campo que seja de class="pula" */
$('.pula').keypress(function(e){
/*
* verifica se o evento é Keycode (para IE e outros browsers)
* se não for pega o evento Which (Firefox)
*/
var tecla = (e.keyCode?e.keyCode:e.which);
/* verifica se a tecla pressionada foi o ENTER */
if(tecla == 13){
/* guarda o seletor do campo que foi pressionado Enter */
campo = $('.pula');
/* pega o indice do elemento*/
indice = campo.index(this);
/*soma mais um ao indice e verifica se não é null
*se não for é porque existe outro elemento
*/
if(campo[indice+1] != null){
/* adiciona mais 1 no valor do indice */
proximo = campo[indice + 1];
/* passa o foco para o proximo elemento */
proximo.focus();
}
}
/* impede o sumbit caso esteja dentro de um form */
e.preventDefault(e);
return false;
})
})
</script>
</head>
<body>
<table>
<tr>
<td>Campo 1:<input type="text" id="campo1"
name="campo1" class="pula" /></td>
</tr>
<tr>
<td>Campo 2:<input type="text" id="campo2"
name="campo2" class="pula" /></td>
</tr>
<tr>
<td>Campo 3:<input type="text" id="campo3"
name="campo3" class="pula" /></td>
</tr>
<tr>
<td><input type="button" value="Enviar" /></td>
</tr>
</table>
</body>
</html>
Efeito simples e funcional, com algumas modificações da para fazer requisições Ajax ao pressionar Enter para enviar um valor.