|
| Hvordan kalder man en variabel fra et ande~ Fra : Jess Bonde |
Dato : 08-10-02 13:13 |
|
Jeg har skrevet til en variabel i et andet frame sådan her:
parent.frames['topframe'].variabel=document.forms[0]['inputnavn']
value;
Hvordan kalder jeg den igen fra et tredie frame?
Jess.
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Morten Abildgaard (08-10-2002)
| Kommentar Fra : Morten Abildgaard |
Dato : 08-10-02 21:44 |
|
Jess Bonde skrev i news:anui3u$cn1$1@sunsite.dk:
> Jeg har skrevet til en variabel i et andet frame sådan her:
> parent.frames['topframe'].variabel=document.forms[0]['inputnavn']
> value;
>
> Hvordan kalder jeg den igen fra et tredie frame?
Du kan referere til variablen på samme måde i *alle* frames vha.
<script>
var variabel_fra_anden_ramme = parent.frames['topframe'].variabel;
</script>
- hvis dit <frameset> ser nogenlunde således ud:
<frameset rows="100,*,100">
<frame src="top.htm" name="topframe"/>
<frame src="main.htm" name="mainframe"/>
<frame src="bund.htm" name="bundframe"/>
</frameset>
Lidt uddybende forklaring:
(Det hele handler om at se lyset i den hierakiske opbygning.)
"parent.frames['topframe']" henviser til en frame som er at finde i
"parent"-dokumentet. "parent"-dokumentet er det, som indeholder
<frameset>'et.
Når du har henvist til denne frame (og den eksistere), kan du manipulere
med dokumentet i denne frame på nøjagtigt samme måde som dokumentet du
arbejder fra. Du kan f.eks. kalde funktioner og variabler.
Med udgangspunkt i dit spørgsmål, kan du udskrive værdien af variablen
inde i topframe-dokumentet ved blot at refere til variablens navn; f.eks:
<script>
document.write(variabel);
</script>
Men hvis du i et andet dokument (i en anden frame) vil skrive værdien af
variablen, skal du altså først et skridt op i hierakiet til parent-
dokumentet, derefter ind i dokumentet i den frame som indeholder
variablen, og derefter kan du referere til selve variablen, således:
<script>
document.write(parent.frames['topframe'].variabel);
</script>
Men bare for at gøre en kort historie lang, så kan du jo også få et
script i topframen til at skrive variablen i en anden frame, f.eks.
bundframen:
<script>
parent.frames['bundframe'].document.write(variabel);
</script>
Skriv igen hvis det er det rene volapyk. Så må jeg jo lige prøve at
omformulere mig.
Og lad for guds (og alle andres) skyld være med, at indsætte framesets i
de dokumenter som bliver indlæst i hoved-frameset'et... i hvert fald ikke
mens du "leger" med scripts. (For så kommer vi jo ud i noget med
parent.parent.frames osv.)
Held og lykke :)
mvh
Morten Abildgaard
| |
|
|