Confirm en js

Signaler
Messages postés
34
Date d'inscription
jeudi 2 mars 2006
Statut
Membre
Dernière intervention
16 juin 2009
-
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
-
Bonjour ! J'ai un petit souci ...voila mon probleme ...

J'ai un site aspx...

Dans mon site j'ouvre une page de pop-up pour entrer du texte (bref peu importe le probleme n'est pas la)

Quand je ferme la page principale (celle qui ouvre le pop-up) je fait un

CONFIRM  qui demande a l utilisateur si il veu effectivement fermer la page principale ce qui entrainera la fermeture de la page pop up ...

Slmnt voila ... qd je ferme la page de pop-up il m execute la fct de confirm ....
voila le code ...

function

Close() {

if(confirm(
'Vous êtes sur le point de fermer la fenetre TOUT sera perdu')){

PopUp.close(); // PopUp etant une variable qui contient les info de la page

}

else{

}

}

window.onbeforeunload =

function (){

Close()

};

Aussi j'aimerai savoir ce que je peu faire pour ne pas fermer la fenetre principale si je fais "CANCEL"

--> apres apui de la petite croix en haut a gauche ...

Merci d avance

9 réponses

Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
Bonjour,

    si je comprend la question, il s'agit de savoir si le pop-up existe encore, n'est pas fermé  ?

    la création du pop-up : var pop = window.open(....

    le test : if ( pop && !pop.closed ) { le pop-up existe encore }

<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Messages postés
34
Date d'inscription
jeudi 2 mars 2006
Statut
Membre
Dernière intervention
16 juin 2009

Concrètement voici la situation...

1) j ai ma page principale sur laquelle j'ai un bouton ... qd j'appuie dessus il m'ouvre une autre fenetre et desactive le bouton ...

 si mon pop up est tjs ouvert et que je quitte la page principale :

   --> prevenir que je vais TOUT fermer --> si ok je ferme sinon rien

pour cela j'utilise le onbeforeunload...

seulement j'ai un probleme qd je quitte ma page pop - up il m'execute ma fct onbeforeunload ... mais y a pa besoin...

Donc en gros ce que j'aimerai faire ...

*pouvoir réactiver le controle du bouton depuis mon pop-up
* n'executer ma fct de confirm que si je quitte la page principale ...

j'espere que vous comprenez mon probleme ???
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
certes....   et ma réponse ne convient pas ?
<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Messages postés
34
Date d'inscription
jeudi 2 mars 2006
Statut
Membre
Dernière intervention
16 juin 2009

Le probleme vient surtout du fait que en fait ...

sur la page de pop-up j'ai un bouton [RETOUR] qui, en gros, ferme la page de pop-up et me réactive le controle sur mon bouton ...

et qd j'appuie sur ce bouton il m'execute la fonction [CONFIRM] sur le onbeforeunload ...
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
onbeforeunload, c'est juste avant la fermeture de la page.

soit tu veux une confirmation, soit tu n'en veux pas, soit
    tu en veux une sous certaines conditions....

je n'ai pas compris, ni où ça se passe ( dans le pop-up, dans le page mère ... )
    ni quand tu veux cela ( dans la page mère si le pop-up existe ? ou pas ?
       dans le pop-up, et alors quand ? ... ) ...

<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Messages postés
34
Date d'inscription
jeudi 2 mars 2006
Statut
Membre
Dernière intervention
16 juin 2009

La fonction executee par le onbeforeunload ne devrait etre exécutée que a la fermeture de la page mère ...

Malheureusement elle se lance egalement lorsque je ferme une page pop-up etant donne que j'utilise cette fonction ci ...

opener.location.href=

'Default.aspx';
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
>>onbeforeunload ne devrait etre exécutée que a la fermeture de la page mère
    mettre le onbeforeunload dans la page mère, rien de plus

>>opener.location.href='Default.aspx';
    ah.... donc... on charge une autre page,
    ===> l'actuelle se ferme, onbeforeunload est donc activé.

    problème de conception.

<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
mettre une variable globale dans la page mère = false
    qui ne serait = true uniquement lors de ce opener.location.href....
    par exemple.
mais ça dépend de ce qui est fait, où ....

se baser sur les onunload et onbeforeunload laisse généralement "à désirer",
peut-être concevoir ça "autrement".
<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
ou ne pas utiliser un pop-up, mais un div,un span, un  iframe...
dans ce cas étant sur le même page...
( en plus, chacun peut les refuser les pop-up )
<hr />                Cordialement            Bul         [mon Site]     [M'écrire]