Jeg har oprettet spørgsmålet i denne kategori fordi det kun giver problemer hvis vinduerne deler session. Derfor skal det løses med (D)HTML. Jeg kan ikke gøre noget ved fejl i Acrobat Reader, og jeg kan - desværre - heller ikke bede alle brugerne om at opdatere til en version der virker.
-- jeg kunne forestille mig, at Acrobat knytter sig til IE generelt og ikke en bestemt instans, måske kunne det hjælpe, hvis du reloadede moder-siden, når du lukkede pop-up'en ?-)
Nej, det vil desværre ikke løse problemet. Brugerne må gerne have to rapporter åbne på samme tid, så det skal være når window.open() kaldes, at der skal laves en ny session.
Jeg har åbnet to ens rapporter fra to browsere med forskellig session, og da gik det godt, så jeg er ret sikker på at det vil kunne løse mit problem.
Det vil ikke være nok at URL'en er en JSP side, hvor jeg invalidater session, for så vil session også blive invalidated i parent browseren. Det skal KUN være popup vinduet, der får en ny session.
olebole>> Jamen, jeg opretter da heller ikke nogen session i den kodestump der står i spørgsmålet - og det er præcis den kode jeg lægger i en html fil.
Jeg har måske ikke nogen eksplicit kontrol over sessions i HTML/JavaScript, men kan man ikke forestille sig, at Acrobat Readeren (jeg går ud fra at det må være en ActiveX Control) bruger en session, der bliver oprettet implicit.
"Giver jeg de to vinduer navnene 'a' henholdsvis 'b' kan jeg endda have dem åbne samtidigt." Kan du ikke det, hvis du ikke navngiver dem??? Jeg kan altid få lov til at have begge pdf filerne åbne samtidigt og de bliver altid åbnet i hvert deres browser vindue.
Grunden til at jeg troede (tror) at det kan have noget med session variabler at gøre er, at jeg opdagede problemet da jeg åbnede to dynamisk genererede pdf filer ved at brugeren klikker på en knap. Efter at jeg havde brugt lang tid på at lede efter fejlen i den kode der genererer pdf'erne, fandt jeg ud af at jeg kunne genskabe fejlen fra andre steder i programmet, hvor brugeren kan vælge mellem en lang række rapporter. Hvis man åbner mere end en rapport og lukker dem i omvendt rækkefølge og klikker i den først åbnede inden man lukker den, så crasher IE. Hvis man derimod åbner en rapport i to browser winduer, som har forskellig session id, sker der ikke noget når man lukker dem. Der sker heller ikke noget hvis man lukker den først åbnede uden at have klikket i den.
Jeg har prøvet fra IE'er på adskillige computere - altid med samme resultat :-(
Så lykkedes det endelig ...! Hvis jeg klikker fire-fem gange frem og tilbage, sker det :)
roenving gav dig dog svaret allerede i sin kommentar (05/05-2003 13:18:56). Det fjerner problemet.
I øvrigt har din kode fejl. Der må _aldrig_ være mellemrum mellem tredie arguments elementer i en window.open() - og der er desuden tale om boolske argumenter. Altså det her: 'resizable, scrollbars' - skal være: 'resizable=yes,scrollbars=yes'.
Sådan skal din kode med andre ord se ud - så har du ikke længere problemer:
function btn1Click() { window.open('pdf1.pdf', 'pdf1', 'resizable=yes,scrollbars=yes'); } function btn2Click() { window.open('pdf2.pdf', 'pdf2', 'resizable=yes,scrollbars=yes'); }
Det er ikke helt entydigt. Der er visse browserafhængigheder. Jeg kan huske, vi bl.a. testede det på Framfab og fandt ud af, det sikreste var at sætte værdien :) /mvh
Jeg har kigget på MSDN's dokumentation for open(), og det ser rigtignok ud til at værdien af parameteren skal angives. Desværre fjerner det ikke problemet, og det hjælper tilsyneladende heller ikke at navngive vinduerne.
Taahhh .... med navngivne vinduer kan jeg flippe frem og tilbage mellem vinduerne 20 gange, uden den går ned. Mere har jeg ikke fundet det værd at teste :)
Ja, det kan jeg jo også med unavngivne vinduer. Fejlen opstår KUN hvis man KLIKKER i den først åbnede pdf fil - ikke på vinduets titelbar, menuen eller andet, men inde i pdf filen - inden man lukker den som den sidste.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.