SoloCodigo

Programación Web y Scripting => HTML => Mensaje iniciado por: franc en Domingo 19 de Febrero de 2006, 04:24

Título: Cambiar De Input Con La Tecla Enter
Publicado por: franc en Domingo 19 de Febrero de 2006, 04:24
Hola, espero que podais ayudarme con la siguiente duda...


Estoy haciendo un formulario ( en html ) y al usuario de este le parece un coñazo tener que hacer click en cada campo para escribir... ( yo se que se puede usar el tabulador... pero este usuario no tiene NI IDEA de un ordenador y me resultara muy dificil explicarle el funcionamiento del tabulador ... ) enfin que he pensado que debe de haber una forma de que una vez rellenado un campo el usuario pulse "enter" y vaya al siguiente campo ( creo que es necesario JavaScript ) y que cuando no haya mas campos se visualice un mensaje por pantalla indicando que no hay mas campos...

¿ Alguien podria decirme si esto es posible y como debo de hacerlo ?

( el mostrar el mensaje esta claro, ¿ pero capturar el evento de pulsar el "enter" y situar el cursor en el siguiente campo ? )

Ayudarme please !

Gracias !
Título: Re: Cambiar De Input Con La Tecla Enter
Publicado por: Kev en Martes 28 de Febrero de 2006, 20:13
Asi es necesitas Javascript, te doy una idea OK:

Veamos un ejemplo donde tengamos 2 campos de texto:
Código: Text
  1.  
  2. <head>
  3. <title>Ejemplo</title>
  4. <script language="javascript">
  5.   function Ir()
  6.   {
  7.     if (event.keyCode == 13)
  8.     {
  9.       document.frm1.T1.focus();
  10.     }
  11.   }
  12. </script>
  13. </head>
  14.  
  15. <body>
  16.   <form name="frm1">
  17.     <input type="text" onkeydown="Ir();">
  18.     <input type="text" name="T1" id="T1">
  19.   </form>
  20. </body>
  21.  
  22.  

Como notas en el ejemplo anterior uso el evento onkeydown y luego lo mando a una funcion donde verifico que sea la tecla enter para pasar el foco a otra caja de texto.

Espero te sirva

Salu2

 :comp:  :hola:
Título: Re: Cambiar De Input Con La Tecla Enter
Publicado por: franc en Jueves 2 de Marzo de 2006, 00:22
gracias por tu ayuda,


mi idea es evitar que se envie el formulario al pulsar enter... porque si estas rellenando un formulario y pulsas enter hace "submit" el boton submit que hay en el formulario... ¿ se puede evitar esto ?

Gracias
Título: Re: Cambiar De Input Con La Tecla Enter
Publicado por: Kev en Jueves 2 de Marzo de 2006, 17:28
Hola, pues la funcion del submit es esa, de lanzarse al presionar enter, pero de todas formas podemos hacerlo, solo tienes que agragar una linea que anula el evento de la tecla presionada

EJ:
Código: Text
  1.  
  2.       document.frm1.T1.focus();
  3.       event.returnValue=false;
  4.  
  5.  

Suerte!!
 :comp:
Título: Re: Cambiar De Input Con La Tecla Enter
Publicado por: Amilius en Jueves 2 de Marzo de 2006, 17:53
Cita de: "franc"
gracias por tu ayuda,


mi idea es evitar que se envie el formulario al pulsar enter... porque si estas rellenando un formulario y pulsas enter hace "submit" el boton submit que hay en el formulario... ¿ se puede evitar esto ?

Gracias
Otra forma es crear un boton de ancho y alto 0, oculto en alguna parte, si es el primer boton recibira el foco principal para botones y sera el que sera activado al presionar enter. Esto es util si quieres modificar el comportamiento de tu pagina al presionar enter, si quieres que se presione uno u otro boton dependiendo de la situacion.

Por ejemplo si tienes dos formularios en la misma pagina para distintas cada uno con su boton submit. Podrias detectar en cuales "input box" esta el usuario (es decir en que formulario) y dependiendo de eso llamar a uno u otro submit button.
Título: Re: Cambiar De Input Con La Tecla Enter
Publicado por: juancpalmajr en Martes 23 de Mayo de 2006, 16:35
lo malode javascript es que siempre deshabilitan la opcion desde el browser y la pagina se ve como una porqueria.