Avatar billede ducks Nybegynder
15. juli 2003 - 21:44 Der er 6 kommentarer og
1 løsning

Luk popup automatisk og refresh owner vinduet

Jeg åbner en popup sådan:

function doBillede() {
    var args;
    var arr;
    arr = showModalDialog('billede.asp?id=<%=session("brugerid")%>',args,'scroll=no; center=yes; status=no; help=no; dialogWidth=373px; dialogHeight=230px;');
    if (arr) {
    location.reload();
  }
}

Og når jeg så vil uploade et billede med asp, skal popupen's action pege på sit eget dokument. Men den åbner bare et nyt vindue, kan man ungå det?

Hvis man ikke kan undgå det, så skal det vindue der bliver åbnet bagefter, lukkes igen, når det er loadet fuldt igennem, og dets owner vindue refreshes.

Håber i kan forstå det og kan give god forklaring/kode da jeg ikke er så meget inde i JavaScript
Avatar billede ducks Nybegynder
15. juli 2003 - 22:21 #1
Skal der flere point eller er det umuligt? Så sig til.
Avatar billede roenving Novice
16. juli 2003 - 01:11 #2
Øeh, hvorfor bruger du showModalDialog ?-)

-- da det er noget som kun kan virke i een browser på eet styresystem kender jeg den kun af omtale ...

-- ogehh... args ?-)

-- er der ikke noget med en returnValue ...

-- jeg ville prøve msdn -- jeg tror kun det M$s udviklere som ved noget om det ...

PS. Bruger selv den browser og det styresystem, men jeg vil blive mere gal, hvis du forsøgte at smide sådan noget i hovedet på mig, end hvis du sender 50 popups umotiveret
Avatar billede ducks Nybegynder
16. juli 2003 - 01:58 #3
Jeg forstår ikke helt hvad du skriver til sidst? Jeg vil undgå at der kommer mere end den dialog...

Hvis den kun virker i IE og ikke virker særlig godt, må du godt lave en centreret popup som virker ordentligt :\
Avatar billede roenving Novice
16. juli 2003 - 02:12 #4
Dette vil give en centreret popup:

function popWin(){
var w = 373;
var h = 230;
var l = Math.floor((screen.availWidth-w)/2);
var t = Math.floor((screen.availHeight-h)/2);
window.open('billede.asp?id=<%=session("brugerid")%>','Billede','width='+w+',height='+h+',screenX='+l+',left='+l+',screenY='+t+',top='+t+',status=no');
}

Den kaldes så med f.eks. <button onclick="popWin();">Tryk her for billede</button>

Her er det angivet absolut, man kunne også overføre de variable parametre med funktionskaldet (popWin('billede.asp?id=<%=session("brugerid")%>',373,230) f.eks.).

Når du vil refreshe kan du i din billede.asp angive opener.location.reload(true) som vil sørge for, at en ny udgave loades ...

Men jeg tror ikke jeg helt har forstået hvad du ønsker med popuppen og reloaden -- er det noget med et billede-upload ?-)
Avatar billede ducks Nybegynder
16. juli 2003 - 06:39 #5
Ja, det er et billede upload.

Når man har åbnet den første popup, skal man uploade et billede, uden at en ny popup kommer, netop for at undgå en masse vinduer :)


Kigger lige på det i morgen... om nogle timer :\
Avatar billede ducks Nybegynder
21. juli 2003 - 18:36 #6
.
Avatar billede roenving Novice
22. juli 2003 - 01:59 #7
Tak for svaret !-)

-- har du kigget på http://roenving.users.whitehat.dk og prøvet ResizeTilBillede ...
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester