Avatar billede suntj Nybegynder
10. februar 2001 - 00:53 Der er 13 kommentarer og
1 løsning

Sende værdi tilbage til side

Jeg har en side, hvor jeg åbner et nyt lille vindue.

Herfra vil jeg gerne kunne sende lidt tekst tilbage til et input-felt på siden, der åbnede vinduet.

Kan det lade sig gøre?
Avatar billede brain Nybegynder
10. februar 2001 - 01:03 #1
Det kan nemt lade sig gøre. I det ny lille fine vindue ;-), kan du komme til den dokument der har åbnet det med window.parent

Dette object svarer til window objectet på den side der åbnede vinduet, så en reference i den nye vindue som f.eks.

window.parent.myForm.myTextfield.value = 1;

vil sætte feltet myTextfield i formen myForm = 1 i det vindue der åbnede siden...
Avatar billede jakoba Nybegynder
10. februar 2001 - 02:45 #2
Der ville jeg godt nok have brugt \"opener\" i stedet for \"parent\"
window.opener.myForm.myTextfield.value = 1;
Avatar billede brain Nybegynder
10. februar 2001 - 02:50 #3
jakoba > du har ret. Det var mig der huskede forkert.... (sådan går det når man ikke lige gide finde koden ;-)
Avatar billede suntj Nybegynder
10. februar 2001 - 12:02 #4
Det virker desværre ikke. Den giver følgende fejl
\'window.opener.pic\' er ikke et object

Mit script ser således ud:
<script language=\"JavaScript\">
function inserttekst(vari){
window.opener.pic.picture.value = vari;
}
</script>

Jeg klader det med følgende:
a href=\"java script:inserttekst(\'jep\')\">Indsæt</a>

Mit inputfelt som på siden, som teksten skal sættes ind i ser således ud:
<form method=\"post\" action=\"\" name=\"pic\">
<p><input type=\"text\" name=\"picture\" size=\"30\"></p>
</form>

Det skal nævnes, at det er i et frameset, og framen med siden som åbner det lille vindue hedder main, og jeg har prøvet følgende:
window.opener.main.pic.picture.value = vari;

Jeg åbner det nye vindue, med et standardscript fra Dreamveaver

Avatar billede suntj Nybegynder
10. februar 2001 - 12:04 #5
Det gik vist lidt for hurtigt, håber du forstår :-)
Avatar billede brain Nybegynder
10. februar 2001 - 13:16 #6
Jeg har lavet dette lille eksempel, hvor du kan fiske det kode du skal bruge med View Source. Jeg har brugt alt dit kode... Den måde vinduet bliver åbnet på er dog min egen...

http://dev.jdn.dk/opener/index.htm

/Jesper
Avatar billede jakoba Nybegynder
10. februar 2001 - 13:36 #7
Der vil jeg anbefale:
window.opener.main.document.forms.pic.picture.value = vari;
i din inserttekst() funktion

brain >> vi glemte sku begge to document leddet før :-))
suntj >> forms leddet er ikke strengt nødvendigt, men hjælper ved at minske risikoen for navnesammenfald med eventuelle andre \"pic\" navne og variable du kan have.
Avatar billede brain Nybegynder
10. februar 2001 - 13:41 #8
jakoba >> document leddet er ikke nødvendigt. Se evt. det lille eksempel jeg lavede til lejligheden...
Avatar billede jakoba Nybegynder
10. februar 2001 - 14:07 #9
brain >> det er ligesom forms-leddet, eller ; til at adskille javascript sætninger. Ikke altid nødvendigt, men du får et mere robust og forståeligt program hvis du bruger det.
Avatar billede jakoba Nybegynder
10. februar 2001 - 14:11 #10
suntj: >> Hvis den side der åbner vinduet er den der ligger i din main ramme er det også den ramme opener peger på. dvs så er der ikke brug for at angive main i adressen:
window.opener.document.forms.pic.picture.value = vari;
Avatar billede suntj Nybegynder
11. februar 2001 - 17:33 #11
Jeg har haft en del problemer med at få det til at virke, til trods for at brain\'s eksempel virkede fint.

Jeg har fundet fejlen. Det er fordi jeg åbner et frameset i det nye vindue, og i en frame her er siden som sender teksten tilbage.

Kan man godt sende teksten tilbage alligevel?
Avatar billede brain Nybegynder
11. februar 2001 - 18:14 #12
så er det nok window.parent.opener... istedet for window.opener....
Avatar billede jakoba Nybegynder
11. februar 2001 - 18:20 #13
nemlig
Avatar billede suntj Nybegynder
11. februar 2001 - 18:24 #14
Det var barin som kom med den løsning jeg har benyttet, så han får pointne
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