Foros del Web » Programando para Internet » Javascript »

getElementById y envio de formulario

Estas en el tema de getElementById y envio de formulario en el foro de Javascript en Foros del Web. Hola a Tod@s: El problema es que tengo un formulario donde se "suben" archivos Código HTML: <div id= "opcion2" style= "display: none;" > Cargando un ...
  #1 (permalink)  
Antiguo 03/03/2006, 13:30
Avatar de Torus  
Fecha de Ingreso: enero-2002
Ubicación: Tú buscame y me encontraras
Mensajes: 413
Antigüedad: 22 años, 4 meses
Puntos: 0
Pregunta getElementById y envio de formulario

Hola a Tod@s:
El problema es que tengo un formulario donde se "suben" archivos
Código HTML:
<div id="opcion2" style="display: none;">Cargando un momento por favor</div>
<div id="opcion1"></div>
<form id="form1" name="form1" method="post" action="">
  <p>
    <label>Fichero
    <input type="file" name="file" value="" />
    </label>
  </p>
  <p>
    <input type="hidden" name="id" value=""  />
    
  </p>
     
    <input type="button" name="Submit" value="Enviar" onClick="enviado(this)"/>
    
 
</form> 
Y tengo la funcion en javascript que hace que cambie el <div>.
Código HTML:
<script language="javascript">
function enviado() {

document.getElementById('opcion1').style.display = 'none'; 
document.getElementById('opcion2').style.display = 'block'; 

document.form1.submit();

}
</script> 
El problema es que no se mantiene el mensaje de 'Cargando un momento por favor'.
Si quito el document.form1.submit(); funciona a las mil maravillas pero no se envia el formulario.
¿Como lo puedo solucionar?
Gracias por vuestra paciencia
Un Saludo
__________________
Hay tanto que aprender y tan poco tiempo
  #2 (permalink)  
Antiguo 03/03/2006, 21:04
Avatar de flaviovich  
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 2.951
Antigüedad: 18 años, 8 meses
Puntos: 39
Creo que se podria usar la funcion setTimeout.
Código:
function enviado()
{
  document.getElementById('opcion1').style.display = 'none';
  document.getElementById('opcion2').style.display = 'block';
  setTimeout("document.form1.submit()",3000);
}
__________________
No repitamos temas, usemos el Motor de busquedas
Plantea bien tu problema: Ayúdanos a ayudarte.
  #3 (permalink)  
Antiguo 04/03/2006, 03:14
Avatar de Torus  
Fecha de Ingreso: enero-2002
Ubicación: Tú buscame y me encontraras
Mensajes: 413
Antigüedad: 22 años, 4 meses
Puntos: 0
Gracias flaviovich por tu respuesta:
Entiendo que con setTimeout("document.form1.submit()",3000); pasado el tiempo envia el formulario... no me valdria ya que lo que pretendo es que el mensaje salga antes y durante la carga del fichero.
Piensa que la subida de dicho fichero dura un tiempo (3 Mgb) y lo que pretendo es que mientras dure dicha carga y hasta que no se redireccione despues de la subida con el "action" aparezca en el div el dichoso texto.
De nuevo muchas gracias y un cordial saludo.
__________________
Hay tanto que aprender y tan poco tiempo
  #4 (permalink)  
Antiguo 04/03/2006, 13:47
Avatar de flaviovich  
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 2.951
Antigüedad: 18 años, 8 meses
Puntos: 39
Creo que estos post te pueden ayudar:
¿Qué sucede con este cargador?
mostrar barra
__________________
No repitamos temas, usemos el Motor de busquedas
Plantea bien tu problema: Ayúdanos a ayudarte.
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 15:51.