FLIron
Messages postés2Date d'inscriptionmardi 21 septembre 2004StatutMembreDernière intervention13 octobre 2006
-
11 oct. 2006 à 18:20
FLIron
Messages postés2Date d'inscriptionmardi 21 septembre 2004StatutMembreDernière intervention13 octobre 2006
-
13 oct. 2006 à 11:50
Salut à tous,
Je rencontre le problème suivant : j'ai une webform dans laquelle pas mal d'opérations sont faites (interrogations de plusieurs bases de données, traitement d'images notamment) avant son affichage.
Je voudrais donc afficher une petite pop-up contenant une image style "Chargement en cours".
J'ai donc inséré le code suivant au tout début du Page_Load :
Dim url As String = "Chargement.aspx"
Dim largeur As Integer = 150
Dim hauteur As Integer = 50
Dim x As Integer = 200
Dim y As Integer = 200
Dim strScript As String = "<script>window.open(""" & url & """,""_blank"",""width=" & largeur & ",height=" & hauteur & ",top=" & x & ",left=" & y & """);</script>"
Mon souci, c'est que la pop-up ne s'affiche pas dès le début, mais seulement à la fin du traitement, en même temps que ma webform. Donc en gros elle ne sert à rien.
J'ai essayé de mettre ce javascript dans Page_Init et Page_PreRender, mais ça ne marche pas non plus.
En mettant un point d'arrêt, l'exécution passe bien par le code du java, mais l'affichage ne suit pas.
J'ai essayé aussi avec Page.RegisterClientScriptBlock à la place de Page.RegisterStartupScript, sans succès.
Si quelqu'un a une idée, ce serait sympa de me dépanner.
cs_Yopyop
Messages postés586Date d'inscriptionlundi 7 janvier 2002StatutMembreDernière intervention10 février 20101 13 oct. 2006 à 10:08
re,
c'est normal : tu génères la popup (plus précisément le script pour ouvrir la popup) et ensuite tu fais le traitement... mais tout cela du côté serveur.
donc la page est renvoyée uniquement à la fin de son traitement... donc la popup ne s'ouvre qu'à ce moment (script client).
1/ génération du script pour ouvirir la popup
2/ long traitement
3/ retour au client
4/ exécution du script pour ouvrir la popup.
Essaye plutôt de mettre ton long traitement dans la popup:
1/ ton user click sur la page pour lancer le traitement
2/ le click ouvre (en javascript) une popup
3/ la popup affiche "Traitement en cours" et se relance pour exécuter le long traitement.
4/ une fois le traitement terminé, la popup affiche "Traitement terminé" ou autre.