• Jueves 28 de Marzo de 2024, 15:16

Autor Tema:  Delay en JSP  (Leído 2770 veces)

Guillermo2010

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Delay en JSP
« en: Martes 19 de Enero de 2010, 05:31 »
0
Hola, me gustaría realizar un delay en mi página jsp cuando haga click en un botón. Apretar el botón y luego de tantos segundos que redireccione, ya que cuando apreto el botón cambio su imagen a un gif pero como se va tan rápido de esa página no se llega a ver la animación del gif.
Cómo podría hacerle? Si alguien tiene alguna idea, bienvenida!
Desde ya muchas gracias comunidad

gophlb

  • Visitante
Re: Delay en JSP
« Respuesta #1 en: Martes 19 de Enero de 2010, 20:54 »
0
Cita de: "Guillermo2010"
Hola, me gustaría realizar un delay en mi página jsp cuando haga click en un botón. Apretar el botón y luego de tantos segundos que redireccione, ya que cuando apreto el botón cambio su imagen a un gif pero como se va tan rápido de esa página no se llega a ver la animación del gif.
Cómo podría hacerle? Si alguien tiene alguna idea, bienvenida!
Desde ya muchas gracias comunidad
un timer de javascript es lo que necesitas ;)

Guillermo2010

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Re: Delay en JSP
« Respuesta #2 en: Martes 19 de Enero de 2010, 23:02 »
0
buen día gophlb, busque algun ejemplo de lo que me mencionaste y probe varios, pero el unico que me funciono a medias fue el que pegare aqui:

Código: Text
  1. <SCRIPT LANGUAGE = "JavaScript">
  2.  
  3. var secs
  4. var timerID = null
  5. var timerRunning = false
  6. var delay = 1000
  7.  
  8. function Delay()
  9. {
  10.     // seteo el tiempo del delay
  11.     secs = 2
  12.     StopTheClock()
  13.     StartTheTimer()
  14. }
  15.  
  16. function StopTheClock()
  17. {
  18.     if(timerRunning)
  19.         clearTimeout(timerID)
  20.     timerRunning = false
  21. }
  22.  
  23. function StartTheTimer()
  24. {
  25.     if (secs==0)
  26.     {
  27.         StopTheClock()
  28.         alert("Grr.")
  29.     }
  30.     else
  31.     {
  32.         self.status = secs
  33.         secs = secs - 1
  34.         timerRunning = true
  35.         timerID = self.setTimeout("StartTheTimer()", delay)
  36.     }
  37. }
  38.  
  39. </SCRIPT>
  40.  


Luego en mi boton tengo:
Código: Text
  1. <input type="image" src="Imagenes/botonanimado.gif" name="btnJugar" onclick='javascript:Delay()'/>
  2.  

Este boton lo tengo adentro de un form que tiene un action a un servlet. Si pruebo el codigo javascript en otro boton fuera de ese form, abre la ventana de alert a los 2 segundos, pero si lo pruebo en el boton donde lo necesito me pasa lo que te mencionaba, va rapido a la pagina del servlet.
Otra cosa es que en esa linea donde esta el alert no se que deberia poner para que se ejecutara el servlet. Yo solo quiero que al hacer click en el boton se quede la pagina actual 2 segundos mas (para dar tiempo a ver todo el gif) y luego si vaya al servlet.

Espero puedas ayudarme, es muy importante lograr esto!
Un saludo
Guillermo