Encontré este código para avanzar con la tecla enter entre los campos de un formulario:
[URL="http://www.elcodigo.com/cgi-bin/DBread.cgi?tabla=scripts&campo=0&clave=82"]http://www.elcodigo.com/cgi-bin/DBread.cgi?tabla=scripts&campo=0&clave=82[/URL]
El codigo completo es este:
Código PHP:
<script language="javascript" type="text/javascript">
siguienteCampo = "campo1"
nombreForm = "miFormulario"
function TelcaPulsada( e ) {
if ( window.event != null) //IE4+
tecla = window.event.keyCode;
else if ( e != null ) //N4+ o W3C compatibles
tecla = e.which;
else
return;
if (tecla == 13) { //se pulso enter
if ( siguienteCampo == 'fin' ) { //fin de la secuencia, hace el submit
alert('Envio del formulario.') //eliminar este alert para uso normal
return false //sustituir por return true para hacer el submit
} else { //da el foco al siguiente campo
eval('document.' + nombreForm + '.' + siguienteCampo + '.focus()')
return false
}
}
}
document.onkeydown = TelcaPulsada; //asigna el evento pulsacion tecla a la funcion
if (document.captureEvents) //netscape es especial: requiere activar la captura del evento
document.captureEvents(Event.KEYDOWN)
</script>
</head>
<body onload="document.miFormulario.campo1.focus();">
<p>ejemplo</p>
<form name="miFormulario" onSubmit="return false" >
1. <input type="text" name="campo1" size="12" onFocus="siguienteCampo ='campo2';"><br>
2. <input type="text" name="campo2" size="12" onFocus="siguienteCampo ='campo3';"><br>
3. <input type="text" name="campo3" size="12" onFocus="siguienteCampo ='campo4';"><br>
4. <input type="text" name="campo4" size="12" onFocus="siguienteCampo ='fin';"><br>
<input type="submit" name="done" value="Enviar"></form>
</body>
</html>
Mis dudas son:
Cuando se le da click a Enviar hacia donde envía la data?? No le falta el archivo destino a este ejemplo??
Dónde debe ir si al dar click en Enviar no hace foco en el botón??
Gracias.