Si tu as laissé tomber l'iframe (et vérifier ci-dessus) c'est plutôtA+Code:win.close();
Version imprimable
Si tu as laissé tomber l'iframe (et vérifier ci-dessus) c'est plutôtA+Code:win.close();
depuis la mère :Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 var win function add() { win = new Window({ title: "Test", width:600, height:450, destroyOnClose: false, maximizable: false, minimizable : false, recenterAuto: false, onClose: addColumns }); win.setURL('/forms/addColumn.html'); win.show(); }
depuis l'iframe:Code:win.close()
Code:parnet.win.close()
Je n'utilise plus d'iframe, j'utilise setAjaxContent (et plus setURL)
Oui "win" est déclaré en global mais dans mon action "win" est toujours undefined...
et dans le formulaire :Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 <body> <p>bla bla bla bla</p> <a href="javascript:addColumn();">Add</a> <script type="text/javascript" language="javascript"> var win; function addColumn() { win = new Window({ title: '<fmt:message key="title" />', id: 'addCoteWindow', destroyOnClose: false, maximizable: false, minimizable : false, width: 350, height: 150, top: 200, left: 120, onClose : addColumns }) .setAjaxContent('<c:url value="/forms/addColumn.html"/>', {}, false, false); }
Code:
1
2
3
4 <input type=button value="<fmt:message key="label.Save" />" class="btn save" onclick="alert(parent);alert(win);win.close();" /> -> Le second alert me dis 'undefined'
Et le premier ?Citation:
Le second alert me dis 'undefined'
Vu que tu n'est plus censé avoir de parent :koi:
A+
oui enfin si tu mettais les scripts dans le head ce serait déja plus porpre
Le premier me dis "[object Window]" mais je confirme ne pas avoir d'iframe
Je peux pas mon head est contenu dans une autre page qui est incluse et je ne tiens pas a rajouter ce script dans le head car il serais insére des toutes les pages alors qu'il n'est utilisé qu'une seule fois..
Bonjour à tous,
Pour ceux qui n'ont toujours pas la réponse à la question "comment fermer la prototype window" autrement qu'en utilisant les boutons propres aux thèmes:
Il faut déclarer la window en variable globale :
Donner un id à la window au moment de la créer (attention, l'id doit respecter une syntaxe particulière) :Code:var win;
Et enfin, pour personnaliser un bouton qui ferme la popup :Code:
1
2
3
4
5
6
7
8
9
10
11 win = new Window({className: "dialog", title: "titre", width:390, id:'popupModale', height:280, recenterAuto:true, draggable:false, destroyOnClose:true, url: URL, showEffectOptions: {duration:0.1}}); win.showCenter(true);
NB : ne pas oublier destroyOnClose dans la déclaration de la fenêtre (ou avec setDestoryOnClose(true)), sous peine d'avoir une belle erreur si jamais l'utilisateur désire ouvrir et fermer plusieurs fois la popupCode:
1
2
3 <a onclick="window.parent.Windows.close('popupModale', event);"> Fermer la fenêtre /> </a>
En faisant comme ça, plus de soucis! :ccool: