Foros del Web » Programando para Internet » Javascript »

Limpiar campos luego de enviar el formulario

Estas en el tema de Limpiar campos luego de enviar el formulario en el foro de Javascript en Foros del Web. Que tal Tengo un formulario, y dentro de esa misma pagina un Iframe. Se supone que al enviar los datos del formulario, esto se procesa ...
  #1 (permalink)  
Antiguo 21/02/2007, 18:26
 
Fecha de Ingreso: febrero-2002
Ubicación: Chile
Mensajes: 1.573
Antigüedad: 22 años, 2 meses
Puntos: 2
Limpiar campos luego de enviar el formulario

Que tal


Tengo un formulario, y dentro de esa misma pagina un Iframe.
Se supone que al enviar los datos del formulario, esto se procesa en el iframe.

Hasta alli todo perfecto, solo que deseo que una vez enviado los datos se eliminen los que se ingresaron y se ponga el "foco" en uno de los campos.

Hasta alli todo perfecto, el problema es que "onsubmit" me cambia los valores por los "por default" y envia los "default" y los del cliente se pierden.

Mi codigo


<script>

function limpia()

{
document.form.submit();
document.form.codigo.value = " ";
document.form.codigo.focus();
}

</script>

<form name="form" method="post" action="iframe.php" target="iframe" onsubmit=limpia();>
<input type="text" name="codigo">
<input type="submit" value="envia">


Alguna sugerencia?

Saludos
  #2 (permalink)  
Antiguo 21/02/2007, 18:29
 
Fecha de Ingreso: enero-2007
Mensajes: 405
Antigüedad: 17 años, 4 meses
Puntos: 3
Re: Limpiar campos luego de enviar el formulario

cuales son los valores por defecto????

En teoria envia los datos, y pondria el campo codigo con un espacio en blanco.


Saludos.
  #3 (permalink)  
Antiguo 21/02/2007, 18:30
 
Fecha de Ingreso: febrero-2002
Ubicación: Chile
Mensajes: 1.573
Antigüedad: 22 años, 2 meses
Puntos: 2
Re: Limpiar campos luego de enviar el formulario

Exacto, eso es lo que quiero hacer, pero me envia el valor en blanco.

Saludos
  #4 (permalink)  
Antiguo 21/02/2007, 18:33
 
Fecha de Ingreso: enero-2007
Mensajes: 405
Antigüedad: 17 años, 4 meses
Puntos: 3
Re: Limpiar campos luego de enviar el formulario

prueba a poner onload="limpia()" en el iframe, que en ese momento ponga el campo vacio.

elimina de limpia() la primera linea.

quita el onsubmit del form.


Saludos.
  #5 (permalink)  
Antiguo 21/02/2007, 18:38
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Re: Limpiar campos luego de enviar el formulario

Creo que lo mejor sería que utilices la funcion reset(), esto hace lo mismo que si colocaras un boton de tipo reset en el formulario.

saludos
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #6 (permalink)  
Antiguo 21/02/2007, 19:40
 
Fecha de Ingreso: febrero-2002
Ubicación: Chile
Mensajes: 1.573
Antigüedad: 22 años, 2 meses
Puntos: 2
Re: Limpiar campos luego de enviar el formulario

<form name="form" method="post" action="iframe.php" target="iframe" onsubmit=limpia();>


No hace nada

No se mucho javascript, parece que no entendi lo que me dijiste

gracias

<script>
function limpia()
{


document.ingreso_codigo.target="boleta"
document.ingreso_codigo.submit();
document.ingreso_codigo.reset();

}

</script>


Lo puse asi, y envia los "valores por defecto"

Última edición por NRLABS; 21/02/2007 a las 19:56
  #7 (permalink)  
Antiguo 21/02/2007, 19:59
Avatar de demiurgo_daemon  
Fecha de Ingreso: diciembre-2006
Ubicación: Querétaro
Mensajes: 184
Antigüedad: 17 años, 4 meses
Puntos: 2
Re: Limpiar campos luego de enviar el formulario

hola,

déjame ver si entiendo lo que necesitas:

1. al enviar los datos, los campos deben quedar vacíos. esto se puede lograr sin javascript si no definiste el atributo value en las entradas de texto abiertas. es la conducta por default.

2. algún campo debe tener foco: la línea que da el foco puede ejecutarse al terminar de cargar la página:

Código:
window.onload = function(){
    document.form.codigo.focus();
}
claro que debes buscar el elemento con funciones propias del DOM, como
Código:
document.getElementById()
ya que, de lo contrario, corres mucho riesgo de que tu código funcione sólo en algunos navegadores.

otra opción totalmente distinta es usar AJAX, con lo que inclusive te olvidarías del iframe, pero ya me parece demasiado relajo para lo que buscas.

saludos
  #8 (permalink)  
Antiguo 21/02/2007, 20:02
 
Fecha de Ingreso: febrero-2002
Ubicación: Chile
Mensajes: 1.573
Antigüedad: 22 años, 2 meses
Puntos: 2
Re: Limpiar campos luego de enviar el formulario

Hola

Debo usar el iframe, el software solo debe funcionar con firefox (es una cuestion interna) por lo tanto con otros navegadores no me preocupa.

Efectivamente, la conducta por defecto es "reiniciar el formulario".. pero eso ocurre cuando envias el formulario por la misma pagina, o a otra pagina.. pero no ocurre cuando lo envias a un iframe (se queda los datos introducidos).

Entonces, que es lo que intente hacer, enviar los datos al iframe, y luego de eso, resetear los campos a sus "value" por defecto.

Me logre explicar?

Tengo el codigo corriendo en un server por si lo quieren ver

"la idea"
http://201.220.125.215:8080/ventas/

Saludos
  #9 (permalink)  
Antiguo 21/02/2007, 20:21
 
Fecha de Ingreso: febrero-2002
Ubicación: Chile
Mensajes: 1.573
Antigüedad: 22 años, 2 meses
Puntos: 2
Re: Limpiar campos luego de enviar el formulario

Lo arregle de esta manera

<script>
function envia()
{

document.ingreso_codigo.codigo.value=document.ingr eso_codigo.codigo2.value;
document.ingreso_codigo.codigo2.value=''

}

</script>

<form name="ingreso_codigo" method="post" action="boleta.php" target="boleta" onSubmit="envia()" >

<input type="text" name="cantidad" value="1"><br>
<input id="codigo2" type="text" name="codigo2">
<input type="hidden" name="codigo" id="codigo">
<input type="submit" value="Enviar">



No me parece para nada ortodoxa, pero "funciona"

Paso el contenido a un hidden y luego envio.

Si alguien lo puede mejorar, bienvenido sea.

Gracias por sus aportes
  #10 (permalink)  
Antiguo 10/08/2008, 22:57
 
Fecha de Ingreso: agosto-2008
Mensajes: 2
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Limpiar campos luego de enviar el formulario

Hola, tenia el mismo problema y obtuve la solucion

en el tag form puse onSubmit="javascript:document.form.reset();"

y me funciono de maravilla.
  #11 (permalink)  
Antiguo 11/08/2008, 02:31
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Respuesta: Limpiar campos luego de enviar el formulario

El mensaje original es de hace más de 1 año. Por favor, no reviváis temas tan antiguos.

Saludos,
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 10:16.