Avatar billede nell Nybegynder
06. juli 2001 - 16:40 Der er 8 kommentarer og
1 løsning

Target i form

Mit spørgsmål lyder

Jeg har en side med et framset som hvor en af siderne i framesettet laver en \"window.open\" og en ny popupside kommer med endnu et frameset. på en af siderne er der en form som jeg gerne vil have bliver sendt over i det første frameset ........kan ikke få mit target til at virke har prøvet
top.opener.top.Framenavn med det spawner bare en ny selv om det er et objekt i javascript
Avatar billede jakoba Nybegynder
06. juli 2001 - 16:58 #1
top.opener.  er ihvertfald god nok. det fører dig tilbage til den side/ramme hvor det nye vindue blev åbnet.

top.opener.top    kan gå galt hvis siden fx ligger på freepaq eller subnet hvor webhotellet lægger et frameset om dine filer.
top.opener.parent  er sikrere, så risikerer du ikke at gå formange lag op.

top.opener.top.Framenavn  er lidt risikabel medmindre du passer på at navngive dine frame med navne du er HELT sikker på ikke bruges til noget andet.
top.opener.top.frames.Framenavn  er langt sikrere, for så bliver der kun ledt efter navnet blandt de rammenavne der er.

så prøv:
top.opener.parent.frames.Framenavn
(og husk også at checke din brug af store/små bogstaver:)

mvh JakobA
Avatar billede nell Nybegynder
06. juli 2001 - 23:37 #2
Jakob jeg takker for dit svar og prøver det når jeg igen efter ferie er tilbage i mit vante miljø...Jeg arbejder med Servlets så det med små og store bogstaver burde ikke være noget problem og mht framenavne så har vi lavet en standard således de ikke overlapper hinanden
Avatar billede nell Nybegynder
16. juli 2001 - 09:30 #3
Har nu testet det men uden det store held....mit problem er nok at det er taget i en form det gør at det ikke virker..
Avatar billede jakoba Nybegynder
16. juli 2001 - 09:56 #4
det lyder sandsynligt.
Kan du vise formens kode?
Avatar billede nell Nybegynder
16. juli 2001 - 10:32 #5
Den skulle være her
<HTML>
<HEAD>
<META http-equiv=\'content-type\' content=\'text/html;charset=iso-8859-1\'>
<META name=\'generator\' content=\'inCorp A/S\'>
</HEAD>
<BODY class=\'ColorBackground\' topmargin=\'0\' marginheight=\'0\'>
<FORM target=\'top.opener.parent.frames.PictureUpload\' action=\'**filename**\' method=\'post\' name=\'ContGen\' enctype=\'multipart/form-data\'>
    <TABLE border=\'0\' cellpadding=\'0\' cellspacing=\'0\' width=\'100%\'>
        <TR height=\'14\' valign=\'top\'>
            <TD align=\'right\' class=\'ColorContentsDesc\' height=\'14\' nowrap width=\'1%\' valign=\'middle\'>
                <DIV class=\'FontContentsDesc\'>                    Drivers License:
                </DIV>
            </TD>
            <TD class=\'ColorContentsData\' height=\'14\'>
                <DIV class=\'FontContentsData\'>
                    <INPUT class=\'browse\' 150 type=\'file\' name=\'filupload\' size=\'16\'>
                </DIV>
            </TD>
        </TR>
    </TABLE>
</FORM>
</BODY>
</HTML>
Avatar billede nell Nybegynder
16. juli 2001 - 10:38 #6
Når man skriver
alert(top.opener.parent.PictureUpload)

får man et object og jeg kan også hive target og alt andet ud fra formen men den vil bare ikke submitte dertil ...... tror jeg skal finde en anden måde ar arbejde uden om det problem på.
Avatar billede nell Nybegynder
16. juli 2001 - 10:49 #7
Ok har fikset det.....
Doh simpelt svar........i stedet for at skrive top.opener....osv

skulle man bare skrive framenavnet.....hvor simpelt kan det være.. men ellers tak
Avatar billede jakoba Nybegynder
16. juli 2001 - 10:51 #8
<FORM target=\'top.opener.parent.frames.PictureUpload\' action=\'**filename**\' method=\'post\' name=\'ContGen\' enctype=\'multipart/form-data\'>

Desværre. du kan ikke bruge javascript addressering i en html kommando. I en html-kommando skal target blot være et rammenavn:

<FORM target=\'PictureUpload\' action=\'**filename**\' method=\'post\' name=\'ContGen\' enctype=\'multipart/form-data\'>

Det ville virke fint indenfor rammerne af et enkelt browservindue. men så vidt jeg ved kan det ikke bruges imellem 2 forskellige browservinduer.

Normalt ville jeg blot lave en \"hidden form\" på en af siderne i det oprindelige browservindue. copierer data derover og så submitte den skjulte form med rammenavnet som target. men det felt du vil have submittet er en
<input type=\'file\' og den ved jeg ikke hvordan man \"kopierer data fra\".

så jeg kender ikke en løsning på dit problem. Men det kan lade sig gøre. Når man appender til en mail fra yahoo mail får man netop sådan en popop med et type=\'file\' input op. og det virker da.

prøv at dissecte hvordan yahoo gør.
lad evt spørgsmålet stå lidt. I tilfælde af der kommer nogen forbi og der ved hvordan.

mvh JakobA
Avatar billede jakoba Nybegynder
16. juli 2001 - 10:55 #9
Hey. din samtidige kommentar lyder som man KAN buruge rammenavn som target imellem 2 forskellige browserwinduer. Godt at vide :-))
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