Pop-up qui ne s'affiche pas [Résolu]

Messages postés
2
Date d'inscription
mardi 21 septembre 2004
Dernière intervention
13 octobre 2006
- - Dernière réponse : FLIron
Messages postés
2
Date d'inscription
mardi 21 septembre 2004
Dernière intervention
13 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>"

       Page.RegisterStartupScript("clientScript", strScript)

Ensuite arrive le code du traitement assez long.

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.

Merci !
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
586
Date d'inscription
lundi 7 janvier 2002
Dernière intervention
10 février 2010
1
3
Merci
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.

yopyop

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 86 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_Yopyop
Messages postés
6069
Date d'inscription
dimanche 13 avril 2003
Dernière intervention
15 juillet 2011
22
0
Merci
Salut

Regardes du coté de Ajax,
et si tu es en 2005 Atlas, tu as toute la gestion qui est présente.

www.asp.net
rubriques ajax

tu as des videos et companies
Commenter la réponse de nhervagault
Messages postés
2
Date d'inscription
mardi 21 septembre 2004
Dernière intervention
13 octobre 2006
0
Merci
Merci pour ta réponse, c'est exactement ce qu'il me fallait !

Well done !
Commenter la réponse de FLIron

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.