Avatar billede kgp43 Nybegynder
01. august 2004 - 19:10 Der er 20 kommentarer og
1 løsning

Popup og luk igen ved submit af form

Hejsa,

Jeg skulle ved ikke være så heldig, at der er en der har følgende script liggende:

- Brugeren klikker på et link
- En popup kommer frem
- Brugeren taster nogle informationer i en form (på popup siden) og klikker submit
- Popup'en lukker og en ny side loades (der bruger informationerne submitted fra formen).
Avatar billede kgp43 Nybegynder
01. august 2004 - 22:42 #1
Har fået lavet popup'en (i 500x200px), men ved ikke hvordan resten skal gribes an.

<a href='#' onclick='window.open "upload_form.php","popup","width=500,height=200,status=no");'>Click here to host your file</a>
Avatar billede roenving Novice
02. august 2004 - 01:31 #2
Lidt sjov løsning, men den virker faktisk !-)

-- i popup'en:

<form action="ditServersideScript.php" target="moderVindue" onsubmit="opener.name='moderVindue';setTimeout('self.close()',100);return true;">

-- osv.
Avatar billede kgp43 Nybegynder
31. august 2004 - 09:46 #3
lig er svar så er der point :)
Avatar billede roenving Novice
31. august 2004 - 14:21 #4
Velbekomme '-)
Avatar billede kgp43 Nybegynder
31. august 2004 - 15:49 #5
takker for hjælpen.
Avatar billede roenving Novice
31. august 2004 - 16:14 #6
-- og tak for point ;~}
Avatar billede babyworm Nybegynder
09. oktober 2004 - 14:23 #7
Undskyld jeg spørger ind her.. nu hvor spørgsmålet er lukket.. men tænkte på om i vidste hvordan modervinduet bliver opdateret/refreshet når man lukker popup'en ?
Avatar billede roenving Novice
09. oktober 2004 - 22:06 #8
Da det jo bliver fyldt med resultatet af form-submitten sker det jo automatisk ...
Avatar billede babyworm Nybegynder
10. oktober 2004 - 13:48 #9
Jeg har lavet det samme.. men virker ikke...

Jeg har lavet en add.asp og så deet link som i har lavet... men når jeg submitter min add.asp så lukker den popupvinduet, og så sker der ikke mere...
Avatar billede roenving Novice
10. oktober 2004 - 13:56 #10
Har du gjort alt det, som i ovenstående er indsat i form-tagget ?-)
Avatar billede babyworm Nybegynder
10. oktober 2004 - 13:58 #11
ja ?

den ser sådan ud:
<form method="post" action="add.asp?ch=call&cid=<%=customerid%>&cmd=add" onsubmit="opener.name='/viskunde.asp?cid=<%=customerid%>';setTimeout('self.close()',100);return true;">
Avatar billede roenving Novice
10. oktober 2004 - 14:12 #12
Du har misforstået ...

opener.name skal være et gyldigt html-name, for det er en system-property, som så kan bruges til at sætte i en target (og som ikke vises nogensomhelst steder i brugerfladen !-), så således:

<form method="post" action="add.asp?ch=call&cid=<%=customerid%>&cmd=add" target="kunde<%=customerid%>" onsubmit="opener.name='kunde<%=customerid%>';setTimeout('self.close()',100);return true;">
Avatar billede babyworm Nybegynder
10. oktober 2004 - 14:41 #13
forstår ikke lige target ?

har min viskunde.asp?cid=<%=customerid%> som viser kunden... og i den fil ligger mit link...  skal target så være viskunde.asp?cid=<%=customerid%> ???
Avatar billede roenving Novice
10. oktober 2004 - 14:52 #14
Nej, prøv at ændre dit form-tag til det ovenstående !-)

Det du skal have i target er det interne system-navn, som et givet window-objekt har, som hvis du f.eks. har givet en (i)frame en name-property, så kan du med target sende resultatet af taggets handling til den (i)frame ...

Da det grundlæggende vindue ikke er født med et window-name må vi give den et, før vi forsøger at adressere det med target, og det er det som sker i ovenstående onsubmit !-)
Avatar billede babyworm Nybegynder
10. oktober 2004 - 15:00 #15
men... jeg har ikke givet det noget navn? Har ingen iframes eller noget... så skal mit target vel være viskunde.asp
Avatar billede roenving Novice
10. oktober 2004 - 15:01 #16
Prøv bare at kopiere den rettede version, jeg har lagt i forrige indlæg !-)
Avatar billede babyworm Nybegynder
10. oktober 2004 - 17:38 #17
Det virker... forstår ikke helt hvorfor...
Avatar billede roenving Novice
10. oktober 2004 - 18:13 #18
Et target er et browser-vindue, ikke det som er indeni vinduet (altså en side !-)

Target skal derfor være det navn, som browseren internt bruger til at identificere det pågældende vindue (og som altså ikke har det fjerneste med, hvad der bliver vist/skal vises i vinduet !-)

Hvis man bruger frames sætter man typisk en name-attribut på en frame, og kan ved at angive det name i target sørge for, at links og/eller forms-resultater vises i den pågældende frame ...

Men hvis man vil bruge det oprindelige vindue som target er man nødt til at sørge for, at vinduet har et name, for et browser-vindue er ikke udstyret med et name, når det fødes, og der er ingen standard html-tags eller metoder til at sørge for, at det har et name ...

Derimod kan man give det et name med javascript, på den måde, som bruges i ovenstående kode: simpelthen sætte en name-property på window-objektet og derefter sætte det samme name som target for det form-tag eller det link, man har brug for !o]
Avatar billede babyworm Nybegynder
10. oktober 2004 - 18:17 #19
ahh... smadder smart... tusinde tak skal du have... :) vil du have lidt points for det ?
Avatar billede roenving Novice
10. oktober 2004 - 18:26 #20
Det er vel noget, du afgør !-)
Avatar billede babyworm Nybegynder
10. oktober 2004 - 18:58 #21
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