Traitement serveur tout en fermant la fenêtre du navigateur clie nt

Le
ThierryP
Bonjour,
J'ai un formulaire avec un bouton "Valider" qui ouvre la page "maPage.aspx"
(via un window.showModalDialog).
Je souhaite qu'un clic sur ce bouton effectue un traitement
sur le serveur et que "maPage.aspx" se ferme.
Pour le moment le traitement serveur se fait bien mais une deuxième page
"maPage.aspx" s'ouvre.
Où écrire quel code pour que "maPage.aspx" se ferme plutôt que d'en ouvrir
une
deuxième ?

Au pire, en guise de solution de secours, je pourrais mettre un bouton
"Fermer" sur "maPage.aspx" mais comment empêcher la republication de cette
dernière lorsque l'on clique sur "Valider" ?

Plateforme : C# 1.1, VS 2003, ASP.net 1
Merci
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Patrice
Le #12182701
"ce bouton" est-il celui qui ouvre mapage.aspx ou un bouton qui est lui-même
présent dans mapage.aspx ? Si cas 1, voir AJAX qui permet de faire de
traitements sur le serveur sans réafficher quoi que ce soit (d'ailleurs si
mapgae.aspx n'affichae absolumeent rien je pense que la fenêtre ne devrait
pas même s'ouvrir), si 2ème voir "base target="_self" qui permet de poster
une fenêtre modale vers elle-même au lieu d'en ouvrir une autre).

--
Patrice


"ThierryP" news:
Bonjour,
J'ai un formulaire avec un bouton "Valider" qui ouvre la page
"maPage.aspx"
(via un window.showModalDialog).
Je souhaite qu'un clic sur ce bouton effectue un traitement
sur le serveur et que "maPage.aspx" se ferme.
Pour le moment le traitement serveur se fait bien mais une deuxième page
"maPage.aspx" s'ouvre.
Où écrire quel code pour que "maPage.aspx" se ferme plutôt que d'en ouvrir
une
deuxième ?

Au pire, en guise de solution de secours, je pourrais mettre un bouton
"Fermer" sur "maPage.aspx" mais comment empêcher la republication de cette
dernière lorsque l'on clique sur "Valider" ?

Plateforme : C# 1.1, VS 2003, ASP.net 1
Merci



ThierryP
Le #12182681
Bonjour et merci,
Je me suis trés mal exprimé.
J'ai en fait "maPage.aspx" qui a été ouverte via un window.showModalDialog.
Cette page contient un formulaire pour reccueillir des infos et un bouton
valider.
En cliquant sur valider je souhaite que les infos soient utilisées sur le
serveur (sauvegardées notamment) et qu'en même temps mapage.aspx se ferme.

Où donc placer le code pour fermer "maPage.aspx" ?
Pas sur le "click" javascript du bouton car le traitement serveur
"btnValider_click" ne sera pas exécuté, mais où alors ?...

Concernant le pbm de republication j'ai essayé de mettre "target="_self"
dans la balise <form> de "maPage.aspx" mais une deuxième "maPage.aspx" est
quand même ouverte. Qu'entendez-vous par "base" dans "base target=..." ?

Encore merci.

"Patrice" a écrit :

"ce bouton" est-il celui qui ouvre mapage.aspx ou un bouton qui est lui-même
présent dans mapage.aspx ? Si cas 1, voir AJAX qui permet de faire de
traitements sur le serveur sans réafficher quoi que ce soit (d'ailleurs si
mapgae.aspx n'affichae absolumeent rien je pense que la fenêtre ne devrait
pas même s'ouvrir), si 2ème voir "base target="_self" qui permet de poster
une fenêtre modale vers elle-même au lieu d'en ouvrir une autre).

--
Patrice


"ThierryP" news:
> Bonjour,
> J'ai un formulaire avec un bouton "Valider" qui ouvre la page
> "maPage.aspx"
> (via un window.showModalDialog).
> Je souhaite qu'un clic sur ce bouton effectue un traitement
> sur le serveur et que "maPage.aspx" se ferme.
> Pour le moment le traitement serveur se fait bien mais une deuxième page
> "maPage.aspx" s'ouvre.
> Où écrire quel code pour que "maPage.aspx" se ferme plutôt que d'en ouvrir
> une
> deuxième ?
>
> Au pire, en guise de solution de secours, je pourrais mettre un bouton
> "Fermer" sur "maPage.aspx" mais comment empêcher la republication de cette
> dernière lorsque l'on clique sur "Valider" ?
>
> Plateforme : C# 1.1, VS 2003, ASP.net 1
> Merci
>





Patrice
Le #12182671
Donc de mémoire je mets une balise :
<base target="_self"> dans la section <head>. Cela permet de "forcer" la
fenêtre modale à poster vers elle-même.

Je pense avoir :
- soit renvoyé le code JavaScript qui ferme la fenêtre dans le onload du
body (ce qui permet de garder la fenêtre ouverte en ne générant pas cette
partie par exemple si pb de validation).
- ou peut-être sur le clic du bouton, je fais un frm.submit();window.close()
dans la foulée...

En farfouillant, je retrouverais peut-être dans quelle application j'ai
cela...

---
Patrice


"ThierryP" news:
Bonjour et merci,
Je me suis trés mal exprimé.
J'ai en fait "maPage.aspx" qui a été ouverte via un
window.showModalDialog.
Cette page contient un formulaire pour reccueillir des infos et un bouton
valider.
En cliquant sur valider je souhaite que les infos soient utilisées sur le
serveur (sauvegardées notamment) et qu'en même temps mapage.aspx se ferme.

Où donc placer le code pour fermer "maPage.aspx" ?
Pas sur le "click" javascript du bouton car le traitement serveur
"btnValider_click" ne sera pas exécuté, mais où alors ?...

Concernant le pbm de republication j'ai essayé de mettre "target="_self"
dans la balise <form> de "maPage.aspx" mais une deuxième "maPage.aspx"
est
quand même ouverte. Qu'entendez-vous par "base" dans "base target=..." ?

Encore merci.

"Patrice" a écrit :

"ce bouton" est-il celui qui ouvre mapage.aspx ou un bouton qui est
lui-même
présent dans mapage.aspx ? Si cas 1, voir AJAX qui permet de faire de
traitements sur le serveur sans réafficher quoi que ce soit (d'ailleurs
si
mapgae.aspx n'affichae absolumeent rien je pense que la fenêtre ne
devrait
pas même s'ouvrir), si 2ème voir "base target="_self" qui permet de
poster
une fenêtre modale vers elle-même au lieu d'en ouvrir une autre).

--
Patrice


"ThierryP" de
news:
> Bonjour,
> J'ai un formulaire avec un bouton "Valider" qui ouvre la page
> "maPage.aspx"
> (via un window.showModalDialog).
> Je souhaite qu'un clic sur ce bouton effectue un traitement
> sur le serveur et que "maPage.aspx" se ferme.
> Pour le moment le traitement serveur se fait bien mais une deuxième
> page
> "maPage.aspx" s'ouvre.
> Où écrire quel code pour que "maPage.aspx" se ferme plutôt que d'en
> ouvrir
> une
> deuxième ?
>
> Au pire, en guise de solution de secours, je pourrais mettre un bouton
> "Fermer" sur "maPage.aspx" mais comment empêcher la republication de
> cette
> dernière lorsque l'on clique sur "Valider" ?
>
> Plateforme : C# 1.1, VS 2003, ASP.net 1
> Merci
>







ThierryP
Le #12182661
Merci bcp.
Le <base target... fonctionne bien.

Pour ce qui est de la fermeture,
- la solution 2 "frm.submit();window.close()" ferme la fenêtre sans que
btnValider_Click s'exécute sur le serveur.
- en ce qui concerne la solution 1 si j'ai bien compris l'idée est de mettre
"onclick=window.close();" dans la balise <body> seulement si le postBack de
la page est à vrai ? Mais comment faire cela ? Sur un contrôle serveur comme
le bouton par ex. je fais
"btnValider.Attributes.Add("onclick","window.close();" mais pour le body ???
Merci



"Patrice" a écrit :

Donc de mémoire je mets une balise :
<base target="_self"> dans la section <head>. Cela permet de "forcer" la
fenêtre modale à poster vers elle-même.

Je pense avoir :
- soit renvoyé le code JavaScript qui ferme la fenêtre dans le onload du
body (ce qui permet de garder la fenêtre ouverte en ne générant pas cette
partie par exemple si pb de validation).
- ou peut-être sur le clic du bouton, je fais un frm.submit();window.close()
dans la foulée...

En farfouillant, je retrouverais peut-être dans quelle application j'ai
cela...

---
Patrice


"ThierryP" news:
> Bonjour et merci,
> Je me suis trés mal exprimé.
> J'ai en fait "maPage.aspx" qui a été ouverte via un
> window.showModalDialog.
> Cette page contient un formulaire pour reccueillir des infos et un bouton
> valider.
> En cliquant sur valider je souhaite que les infos soient utilisées sur le
> serveur (sauvegardées notamment) et qu'en même temps mapage.aspx se ferme.
>
> Où donc placer le code pour fermer "maPage.aspx" ?
> Pas sur le "click" javascript du bouton car le traitement serveur
> "btnValider_click" ne sera pas exécuté, mais où alors ?...
>
> Concernant le pbm de republication j'ai essayé de mettre "target="_self"
> dans la balise <form> de "maPage.aspx" mais une deuxième "maPage.aspx"
> est
> quand même ouverte. Qu'entendez-vous par "base" dans "base target=..." ?
>
> Encore merci.
>
> "Patrice" a écrit :
>
>> "ce bouton" est-il celui qui ouvre mapage.aspx ou un bouton qui est
>> lui-même
>> présent dans mapage.aspx ? Si cas 1, voir AJAX qui permet de faire de
>> traitements sur le serveur sans réafficher quoi que ce soit (d'ailleurs
>> si
>> mapgae.aspx n'affichae absolumeent rien je pense que la fenêtre ne
>> devrait
>> pas même s'ouvrir), si 2ème voir "base target="_self" qui permet de
>> poster
>> une fenêtre modale vers elle-même au lieu d'en ouvrir une autre).
>>
>> --
>> Patrice
>>
>>
>> "ThierryP" >> de
>> news:
>> > Bonjour,
>> > J'ai un formulaire avec un bouton "Valider" qui ouvre la page
>> > "maPage.aspx"
>> > (via un window.showModalDialog).
>> > Je souhaite qu'un clic sur ce bouton effectue un traitement
>> > sur le serveur et que "maPage.aspx" se ferme.
>> > Pour le moment le traitement serveur se fait bien mais une deuxième
>> > page
>> > "maPage.aspx" s'ouvre.
>> > Où écrire quel code pour que "maPage.aspx" se ferme plutôt que d'en
>> > ouvrir
>> > une
>> > deuxième ?
>> >
>> > Au pire, en guise de solution de secours, je pourrais mettre un bouton
>> > "Fermer" sur "maPage.aspx" mais comment empêcher la republication de
>> > cette
>> > dernière lorsque l'on clique sur "Valider" ?
>> >
>> > Plateforme : C# 1.1, VS 2003, ASP.net 1
>> > Merci
>> >
>>
>>
>>





Publicité
Poster une réponse
Anonyme