Foros del Web » Creando para Internet » HTML »

Formulario con un solo input "text"

Estas en el tema de Formulario con un solo input "text" en el foro de HTML en Foros del Web. Hola amigos, mi problema es que tengo un formulario que tiene un único input de tipo "text" (y tambien un "button"), pero sin importar lo ...
  #1 (permalink)  
Antiguo 11/07/2005, 09:08
 
Fecha de Ingreso: julio-2005
Mensajes: 22
Antigüedad: 12 años, 5 meses
Puntos: 0
Formulario con un solo input "text"

Hola amigos, mi problema es que tengo un formulario que tiene un único input de tipo "text" (y tambien un "button"), pero sin importar lo que yo haga, cuando presiono "enter" en el "text" la pagina se me envia...por qué???
(aunque no haya puesto ningun boton submit).

Es algo asi:
Código HTML:
<form name="f" action="mipagina" method="post">
<input type="text" name="t">
<input type="button" value="Enviar" onClick="enviarpagina()">
</form>
<script type='text/javascript'>
function enviarpagina()´
{
 if(f.t.value)
   f.submit();
}</script> 
pero por qué la página sola se envía cuando presiono "enter" en el "text"?
(sé que si pongo mas "texts" no pasa esto, pero yo solo necesito uno).
Si alguien me puede ayudar, lo agradecería mucho.
  #2 (permalink)  
Antiguo 11/07/2005, 10:30
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 16 años
Puntos: 60
Prueba con esto:

Código PHP:
<html>
<
head>

<
script type='text/javascript'
function 
enviarpagina(){ 
return 
document['f']['t'].value.length>0
}
</script>
</head>

<body>
<form name="f" action="mipagina" method="post" onsubmit="return enviarpagina()"> 
<input type="text" name="t"> 
<input type="submit" value="Enviar" > 
</form> 



</body>
</html> 
El formulario seguirá enviándose al pulsar enter, pero ahora sólo lo hará si ha escrito algo en el formulario.
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
  #3 (permalink)  
Antiguo 11/07/2005, 10:32
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 16 años
Puntos: 60
Más sencillo:

Código PHP:
<form name="f" action="mipagina.php" method="post" onsubmit="return this['t'].value.length>0"
<
input type="text" name="t"
<
input type="submit" value="Enviar" 
</
form
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
  #4 (permalink)  
Antiguo 12/07/2005, 10:27
 
Fecha de Ingreso: julio-2005
Mensajes: 22
Antigüedad: 12 años, 5 meses
Puntos: 0
Gracias K. Sabes por qué ocurre esto?, no se puede evitar?, porque cuando envio el formulario con mi funcion "enviarpagina()" este se me envia dos veces y por lo tanto...
problemas...(porque cuando la envio estoy haciendo un insert en Mysql y obviamente me sale el error de clave duplicada,--el insert se ejecuta dos veces--) . Gracias por tu respuesta.
  #5 (permalink)  
Antiguo 12/07/2005, 10:41
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 16 años
Puntos: 60
Prueba a mandarlo como te digo. No uses tu function (porque no es necesaria, creeme, si usas el código que te pongo:
Código PHP:
<form name="f" action="mipagina.php" method="post" onsubmit="return this['t'].value.length>0">
<
input type="text" name="t">
<
input type="submit" value="Enviar" >
</
form
Un saludo!
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
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 17:39.