Foros del Web » Programando para Internet » Javascript »

KeyPress en Inputs

Estas en el tema de KeyPress en Inputs en el foro de Javascript en Foros del Web. Hola a todos Encontré este código que inabilita la tecla Enter en un formaulario que estoy manejando, con la idea de aceptar la tecla Enter ...
  #1 (permalink)  
Antiguo 11/02/2003, 12:55
 
Fecha de Ingreso: abril-2002
Ubicación: Santiago
Mensajes: 106
Antigüedad: 22 años
Puntos: 0
KeyPress en Inputs

Hola a todos

Encontré este código que inabilita la tecla Enter en un formaulario que estoy manejando, con la idea de aceptar la tecla Enter desde el submit del formulario. Me di cuenta que este código desabilita el Enter en todos los input y en el submit tambien.

function onKeyPress()
{
var keycode;
if (window.event) keycode = window.event.keyCode;
else if (e) keycode = e.which;
else return true;

if (keycode == 13)
{
//alert("Haga Click en el boton para validar la entrada");
return false
}
return true
}
document.onkeypress = onKeyPress;


Pregunta: ¿Cómo aplico esta función a determinados inputs?, con el objetivo de aceptar el Enter desde el boton submit.


Gracias
Salu2 dsd Stgo d Chile.




  #2 (permalink)  
Antiguo 11/02/2003, 13:05
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
Hola desqui.

Prueba poner lo siguiente:

document.nombreDelTagForm.submit()

En lugar de esto:

//alert("Haga Click en el boton para validar la entrada");

Cualquier cosa avisa.

Saludos.
  #3 (permalink)  
Antiguo 12/02/2003, 07:10
 
Fecha de Ingreso: abril-2002
Ubicación: Santiago
Mensajes: 106
Antigüedad: 22 años
Puntos: 0
Hola Luis

Gracias por la ayuda.
Me parece que con esa modificación a la función se hace el submit del formulario desde cualquier elemento de este.

Ejemplo. Tengo tres input y el boton submit. Al ingresar un valor en cualquiera de los input y dar un enter se realiza el submit (sin importar si las demás entradas tienen valores). Eso es lo que quiero evitar y obligar a realizar el submit con un enter desde el boton.

Con la función que encontré, valida que no de un enter, pero en todo el formulario, incluyendo el boton submit. Ese es el problema, me veo obligado a hacer un click al boton (por eso el mensaje).

Gracias
Salu2 dsd Stgo d Chile.
  #4 (permalink)  
Antiguo 12/02/2003, 08:45
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 4 meses
Puntos: 61
Hola desqui!!

Prueba con esto a ver si es lo que quieres:


<html>
<head>
<title>Untitled</title>
<script>
function onKeyPress()
{
var keycode;
if (window.event) keycode = window.event.keyCode;
else if (e) keycode = e.which;
else return true;

if (keycode == 13)
{
for (a=0;a<((document.forms[0].elements.length)-1);a++){
if (document.forms[0].elements[a].value==""){alert("Por fevor rellene todos los campos");
return false}
}
document.forms[0].submit;
}
return true
}
document.onkeypress = onKeyPress;

</script>
</head>

<body>
<form action="javascript:alert('¡¡Lo mando!!')">
<input type="text" name="primero"><br>
<input type="text" name="segundo"><br>
<input type="text" name="tercero"><br>
<input type="submit">
</form>

</body>
</html>


Recuerda el rollo de cambiar java script por javascript...

Ah! El input del submit debe ser el último del formulario!!

Un saludo
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
  #5 (permalink)  
Antiguo 12/02/2003, 16:11
 
Fecha de Ingreso: abril-2002
Ubicación: Santiago
Mensajes: 106
Antigüedad: 22 años
Puntos: 0
Con unas pequeñas modificaciones al código que enviaste logré lo que quería, muchas gracias Carlos "Abducido".

Salu2 dsd Stgo d Chile
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 04:18.