Foros del Web » Programando para Internet » Javascript »

Limpiar un formulario

Estas en el tema de Limpiar un formulario en el foro de Javascript en Foros del Web. Resulta que tengo un form que se genera de forma automática (es decir, los input, select, chek, etc.. los saca de una base de datos. ...
  #1 (permalink)  
Antiguo 05/10/2004, 14:52
 
Fecha de Ingreso: octubre-2004
Mensajes: 3
Antigüedad: 19 años, 6 meses
Puntos: 0
Pregunta Limpiar un formulario

Resulta que tengo un form que se genera de forma automática (es decir, los input, select, chek, etc.. los saca de una base de datos.

El tema es que cuando ya se han puesto valores en estos campos y se genera la consulta, entrega bien y si vuelvo a esa página mantengo los últimos valores ingresados.

Sucede que mi form tiene (como todo form bien parido) un boton de envio y otro de limpiar campos, pero pasa que no los limpia, sino que retorna los valorse que tenia por defecto en la etiqueta (parametro value)... entonces quiero saber como puedo tomar todos los campos de un form (para detectaqr los de type=text) y borrar su contenido...

Gracias de ante manos!!!
  #2 (permalink)  
Antiguo 05/10/2004, 15:56
 
Fecha de Ingreso: octubre-2004
Mensajes: 3
Antigüedad: 19 años, 6 meses
Puntos: 0
Bueno, aprendí :), el tema es simple, deben recorrer un arreglo que se llama elements del objeto formulario, entonces teniendo claro el largo del formulario (.length) ya estamos tiki taka para partir, les entrego un código que diseñé recien al respecto.

function limpia(form)
{
frm = document.getElementById(form);
tCampos = frm.elements.length;
for (t = 0; t < tCampos; t++)
if (frm.elements[t].type == "text")
frm.elements[t].value = '';
}
  #3 (permalink)  
Antiguo 05/10/2004, 16:13
 
Fecha de Ingreso: octubre-2004
Mensajes: 3
Antigüedad: 19 años, 6 meses
Puntos: 0
Me respondo solo jajajaja

Lo que hay que tener claro son dos cosas del objeto form

1.- La cantidad de campos que tiene el form (.length)
2.- El arreglo que almacena todos estos campos (.elements[x])

Aquí les dejo un código que limpia todos los campos que sean type="text"

function limpia(form)
{
frm = document.getElementById(form);
tCampos = frm.elements.length;
for (t = 0; t < tCampos; t++)
if (frm.elements[t].type == "text")
frm.elements[t].value = '';
}


La media lata que me di con la edición de colores no?
  #4 (permalink)  
Antiguo 05/10/2004, 16:16
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola rola, bienvenido a los foros :

Tu código está bien, pero tratándos de formularios, creo que es mejor referenciarlo por el name dentro de la colección de formularios.

<form name="miForm" ... >
...
</form>

Y referenciarlo con document.forms["miForm"]
También vale lo de elements y elements.length... etc.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #5 (permalink)  
Antiguo 18/06/2005, 08:17
Avatar de andinistas  
Fecha de Ingreso: julio-2003
Ubicación: Bogotá COL
Mensajes: 1.000
Antigüedad: 20 años, 9 meses
Puntos: 0
Yo estoy buscando como hacer para que cuando yo haga clic en un text form este se limpie, así tipo hotmail cuando uno va a escribir su email este campo se borre automáticamente. saben de algo?
__________________
Un Saludo, Andinistas.
"Llegaron... Ellos tenían la biblia y nosotros la tierra... y nos dijieron: 'Cierren los ojos y recen.' Cerramos los ojos y cuando los abrimos,
ellos tenían la tierra y nosotros la biblia." Abadío Green.
  #6 (permalink)  
Antiguo 18/06/2005, 08:22
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola andinistas

Se algunas cosas a ver si esta te vale:
Código:
<input type="text" value="e-mail" onfocus="if(this.value = 'e-mail') this.value=''" />
Saludos,
  #7 (permalink)  
Antiguo 18/06/2005, 08:24
Avatar de andinistas  
Fecha de Ingreso: julio-2003
Ubicación: Bogotá COL
Mensajes: 1.000
Antigüedad: 20 años, 9 meses
Puntos: 0
ok

Cita:
Iniciado por JavierB
Hola andinistas

Se algunas cosas a ver si esta te vale:
Código:
<input type="text" value="e-mail" onfocus="if(this.value = 'e-mail') this.value=''" />
Saludos,
ok gracias!
__________________
Un Saludo, Andinistas.
"Llegaron... Ellos tenían la biblia y nosotros la tierra... y nos dijieron: 'Cierren los ojos y recen.' Cerramos los ojos y cuando los abrimos,
ellos tenían la tierra y nosotros la biblia." Abadío Green.
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 06:35.