Foros del Web » Programando para Internet » Javascript »

tecla enter

Estas en el tema de tecla enter en el foro de Javascript en Foros del Web. Tengo un formulario con un campo de texto y un boton, y lo que ocurre es que cuando doy al enter envia el formulario(hace el ...
  #1 (permalink)  
Antiguo 28/04/2009, 07:12
 
Fecha de Ingreso: febrero-2009
Mensajes: 77
Antigüedad: 15 años, 3 meses
Puntos: 0
tecla enter (solucionado)

Tengo un formulario con un campo de texto y un boton, y lo que ocurre es que cuando doy al enter envia el formulario(hace el submit directamente), y lo que quiero ,antes de enviar el formulario es hacer unas verificaciones como consta en el formulario.

codigo:

<form name="frm" id="frm" action="carta.html" method="post">
<tr>
<td height="32" align="center"><input name="nombre" id="nombre" type="text" /></td>
</tr>
<tr>
<td height="28" align="center"><input type="button" name="enviar" id="enviar" value=" Enviar " onkeypress="enviamos1(event)" onclick="enviamos()">

AYUDA!

Última edición por lauramiracle; 17/05/2009 a las 11:21 Razón: solucionado
  #2 (permalink)  
Antiguo 28/04/2009, 08:05
Avatar de TonyChile  
Fecha de Ingreso: marzo-2009
Ubicación: Maipú, Santiago
Mensajes: 422
Antigüedad: 15 años, 1 mes
Puntos: 7
Respuesta: tecla enter

Hola Laura lo que puedes hacer es lo siguiente:

Código asp:
Ver original
  1. <td height="32" align="center"><input name="nombre" id="nombre" type="text" onKeypress="if(event.keyCode == 13) event.returnValue = false;" /></td>

Con eso bloqueas la tecla enter dentro del campo text si el usuario lo apreta no pasa nada por lo tanto lo obliga a tener que presionar el boton para hacer el submit.

Espero que te sirva que estes bien
__________________
Chilenos 100% Chilenos de Corazón
"Nuestra mayor gloria no está en no caer jamás, sino en levantarnos cada vez que caigamos"

Última edición por TonyChile; 28/04/2009 a las 08:33
  #3 (permalink)  
Antiguo 28/04/2009, 08:34
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: tecla enter

Estás encarando mal el problema, y eliminando accesibilidad de tu página por no usar los eventos apropiados.

Aplica las validaciones al evento 'submit' del formulario, en vez de al 'click' del botón. El evento 'submit' se lanza antes de enviar un formulario.

Código html:
Ver original
  1. <form name="frm" id="frm" action="carta.html" method="post" onsubmit="enviamos()">
  2. <tr>
  3. <td height="32" align="center"><input name="nombre" id="nombre" type="text" /></td>
  4. </tr>
  5. <tr>
  6. <td height="28" align="center"><input type="button" name="enviar" id="enviar" value=" Enviar ">


Saludos.
  #4 (permalink)  
Antiguo 28/04/2009, 08:46
Avatar de TonyChile  
Fecha de Ingreso: marzo-2009
Ubicación: Maipú, Santiago
Mensajes: 422
Antigüedad: 15 años, 1 mes
Puntos: 7
Respuesta: tecla enter

Ups!

No me habia fijado sino veo el mensaje de alvlin:

Código asp:
Ver original
  1. <tr>
  2. <td height="28" align="center"><input type="button" name="enviar" id="enviar" value=" Enviar " onkeypress="enviamos1(event)" onclick="enviamos()">

Pero cual es la idea de eso poner el onkeypress en el boton junto al onclick?

Cita:
alvlin
Estás encarando mal el problema, y eliminando accesibilidad de tu página por no usar los eventos apropiados.

Aplica las validaciones al evento 'submit' del formulario, en vez de al 'click' del botón. El evento 'submit' se lanza antes de enviar un formulario.
Código asp:
Ver original
  1. <form name="frm" id="frm" action="carta.html" method="post" onsubmit="enviamos()">

es mejor que lo llames en el onsubmit del form
__________________
Chilenos 100% Chilenos de Corazón
"Nuestra mayor gloria no está en no caer jamás, sino en levantarnos cada vez que caigamos"
  #5 (permalink)  
Antiguo 28/04/2009, 12:31
 
Fecha de Ingreso: febrero-2009
Mensajes: 77
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: tecla enter

Cita:
Iniciado por TonyChile Ver Mensaje
Ups!

No me habia fijado sino veo el mensaje de alvlin:

Código asp:
Ver original
  1. <tr>
  2. <td height="28" align="center"><input type="button" name="enviar" id="enviar" value=" Enviar " onkeypress="enviamos1(event)" onclick="enviamos()">

Pero cual es la idea de eso poner el onkeypress en el boton junto al onclick?



Código asp:
Ver original
  1. <form name="frm" id="frm" action="carta.html" method="post" onsubmit="enviamos()">

es mejor que lo llames en el onsubmit del form


MUCHAS GRACIAS!, pero le he puesto el onsubmit, y me sigue llendo a carta.html y lo que yo quiero es que me vaya a la función ya que tengo que verificar datos.....PFffffff!........
  #6 (permalink)  
Antiguo 28/04/2009, 12:47
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: tecla enter

haz que enviamos() devuelva true o false según el resultado de la validación, y cambia por

onsubmit="return enviamos()"

Eso debería bastar.


Saludos.
  #7 (permalink)  
Antiguo 28/04/2009, 12:52
Avatar de TonyChile  
Fecha de Ingreso: marzo-2009
Ubicación: Maipú, Santiago
Mensajes: 422
Antigüedad: 15 años, 1 mes
Puntos: 7
Respuesta: tecla enter

Te debe seguir llendo alla porque le dices eso en el action. debes sacar el onkeypress del boton y dejar solo el evento onclick y ver si se dirije a esa validacion.
Las funciones referidas a (enviamos1(event) y enviamos) son las mismas o son distintas.No estoy muy seguro pero el evento onkeypress no te servira de mucho en el boton ya que sino me equivoco debe ocurrir al mismo momento que el onclick o no ocurrir nunca

Pero aun te arroja el error con el enter o eso ya esta solucionado.
Ahora solo te sige enviando a carta.html al hacer clic en el boton?
O me equivoco?
__________________
Chilenos 100% Chilenos de Corazón
"Nuestra mayor gloria no está en no caer jamás, sino en levantarnos cada vez que caigamos"
  #8 (permalink)  
Antiguo 29/04/2009, 09:21
 
Fecha de Ingreso: febrero-2009
Mensajes: 77
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: tecla enter

Cita:
Iniciado por TonyChile Ver Mensaje
Te debe seguir llendo alla porque le dices eso en el action. debes sacar el onkeypress del boton y dejar solo el evento onclick y ver si se dirije a esa validacion.
Las funciones referidas a (enviamos1(event) y enviamos) son las mismas o son distintas.No estoy muy seguro pero el evento onkeypress no te servira de mucho en el boton ya que sino me equivoco debe ocurrir al mismo momento que el onclick o no ocurrir nunca

Pero aun te arroja el error con el enter o eso ya esta solucionado.
Ahora solo te sige enviando a carta.html al hacer clic en el boton?
O me equivoco?


¡MUCHAS GRACIAS!, ya me funcionó! Me faltaba el return en el onsubmit.........
  #9 (permalink)  
Antiguo 29/04/2009, 09:26
Avatar de TonyChile  
Fecha de Ingreso: marzo-2009
Ubicación: Maipú, Santiago
Mensajes: 422
Antigüedad: 15 años, 1 mes
Puntos: 7
Respuesta: tecla enter

Wuaaa
me alegro que lo solucionaras
ahora en tu primer mensaje de tecla enter podrias poner
tecla enter (solucionado) para que cierren el tema y asi otros sepan que tu tema se encuentra con la solucion
__________________
Chilenos 100% Chilenos de Corazón
"Nuestra mayor gloria no está en no caer jamás, sino en levantarnos cada vez que caigamos"
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:19.