Hej alle sammen
Jeg har et problem med at finde ud af hvordan jeg laver en global
reference til et window objekt.
Jeg har et popup vindue med en jsp-side i. Denne jsp-side åbner
så endnu et vindue med en anden jsp-side i. Dette gøres ved
hjælp af javascript og ved brug af en .js fil som jeg har
liggende i begge jsp sider.
Problemet er så at den jsp-side som åbner den anden jsp-side også
skal være i stand til at lukke den anden jsp-side og det vindue
den befinder sig i.
I min .js fil har jeg en funktion til at åbne vindue 2 med
jsp-siden i og når jeg åbner står jeg jo så med en reference til
vindue 2 som er blevet åbnet. Men jeg skal bruge den reference i
en anden metode som blandt andet bruges til at lukke selv samme
vindue og jsp-side igen. Problet er så, hvordan får jeg gjort
referencen til vindue 2 global inde i min .js fil?
Lidt pseudo-kode agtigt ser det således ud i .js filen :
function open(parameter1, paramter2, .... , paramterx)
{
bla
bla
bla
window2 = window.open(paramter1, parameter2, ... prameterx);
}
function close()
{
bla
bla
bla
window2.close();
window.close();
}
(funktionen der lukker skal altså først lukke det vindue den
åbnede og herefter lukke det vindue hvorfra funktionen bliver
kaldt).
Men det virker ikke og det er jo nok fordi referencen window2
ikke er kendt i funktionen close(), men hvordan får jeg gjort den
kendt?
Det nytter ikke noget i toppen af .js-filen at skrive:
window2;
Så får jeg blot en besked om at window2 er undefined, hvilket jo
er helt korrekt, for den får først værdi senere som reference til
det vindue som åbnes.
Alle forslag vil blive modtaget med kyshånd.
Mange hilsner
Puk