Foros del Web » Programando para Internet » ASP Clásico »

Pantalla de Espera

Estas en el tema de Pantalla de Espera en el foro de ASP Clásico en Foros del Web. Hola, tengo un sitio que tarda mucho en hacer transacciones en la base de datos, por lo que deja en blanco la ventana del navegador ...
  #1 (permalink)  
Antiguo 07/03/2007, 10:26
 
Fecha de Ingreso: enero-2005
Mensajes: 57
Antigüedad: 20 años, 4 meses
Puntos: 0
Pantalla de Espera

Hola, tengo un sitio que tarda mucho en hacer transacciones en la base de datos, por lo que deja en blanco la ventana del navegador mucho tiempo, en lo que carga la página.

¿Cómo puedo hacerle para que en lugar de que dejé la pantalla en blanco, aparezca un gif animado o un mensaje o algo que le indique al usuario que su transaccion esta en proceso?

En coldfusion existe una forma de hacerlo, se logra con la sentencia CFFLUSH la cual envía al navegador lo que ha procesado hasta el momento. Quisiera saber si existe una función equivalente en ASP.

Muchas Gracias ;)
  #2 (permalink)  
Antiguo 07/03/2007, 10:45
 
Fecha de Ingreso: noviembre-2006
Ubicación: México
Mensajes: 866
Antigüedad: 18 años, 6 meses
Puntos: 8
Re: Pantalla de Espera

Que tal.

Claro, el equivalente es: Response.Flush()

Saludos.
  #3 (permalink)  
Antiguo 07/03/2007, 10:58
 
Fecha de Ingreso: enero-2005
Mensajes: 57
Antigüedad: 20 años, 4 meses
Puntos: 0
Re: Pantalla de Espera

Muchas gracias daniel00 ;)
  #4 (permalink)  
Antiguo 07/03/2007, 11:20
 
Fecha de Ingreso: enero-2005
Mensajes: 57
Antigüedad: 20 años, 4 meses
Puntos: 0
Re: Pantalla de Espera

Jala perfecto en OPERA pero en IE 7 nooooooooooo !!!

Que podrá ser?
  #5 (permalink)  
Antiguo 07/03/2007, 12:31
 
Fecha de Ingreso: enero-2005
Mensajes: 57
Antigüedad: 20 años, 4 meses
Puntos: 0
Re: Pantalla de Espera

bueno, les cuento la solución que idee para que se quede plasmado como hacerle y alguien que lo busque después sepa como hacerlo:

Me dí cuenta de que IE no refresca la página actual hasta que le ha llegado "completamente" la siguiente, así que lo forze para que cargará otra página con el gif animado y después esa página redirije a la que quiero. De esta forma logro que el gif se quede en la ventana del navegador hasta que le llegue la siguiente, que es la que tarda mucho.

Les dejo el codigo:

Código:
<% 	
   if Request.querystring.count = 0 then
     Response.write("<div id='barra_progreso' style='position: absolute; top: 200px; left: 200px;'>")
     Response.write("<img src='../../Imagenes/barraProgreso.gif'>")
     Response.write("</div>") 
     Response.flush() 
     %>
     <script language="JavaScript">
	document.location = 'ARCHIVO.asp?animacion=off';
     </script>
     <%
     end if
%>
como pueden ver, en realidad no necesito hacer otro archivo, sino que se redirije a él mismo comportandose según el caso. ;)

Saludos
  #6 (permalink)  
Antiguo 08/03/2007, 09:09
 
Fecha de Ingreso: noviembre-2006
Ubicación: México
Mensajes: 866
Antigüedad: 18 años, 6 meses
Puntos: 8
Re: Pantalla de Espera

Que tal .wh0g3..

Otra manera de hacerlo es cambiando de orden las instrucciones, es decir, primero hay que enviar una parte de la página[Response.flush()] y posteriormente hacer el llamado a la función que tarda mucho, por ejemplo:

Código:
     
.....
...
Response.write("<div id='barra_progreso' style='position: absolute; top: 200px; left: 200px;'>")
     Response.write("<img src='../../Imagenes/barraProgreso.gif'>")
     Response.write("</div>") 
     Response.flush() 

    'Llamar a funcion que tarda mucho.
    FuncionQueTarda()

....
...
...
//Y al Final de la página ASP ocultar el DIV .. javaScript
barra_progreso.style.display = 'none';
....
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 11:07.