Avatar billede harleydk Nybegynder
31. august 2001 - 08:31 Der er 11 kommentarer og
1 løsning

Enkelt spg. for let øvede; document.write

Som eksempel på mit spørgsmål har jeg nedenstående kode:


<html>
<head>

<script language=javascript>
function visTekst()
{
  document.write(\"Tekst2\");
}
</script>
</head>

<body onLoad=\"visTekst()\">Tekst1</body>
</html>


Her har jeg en side med teksten \'Tekst1\', og en onLoad funktion der tilføjer strengen \'Tekst2\' til en side -- men desværre på en helt ny side. Hvordan kalder jeg funktionen, og får den til at skrive sin tekst på den aktuelle html-side, den bliver kaldt fra? (Således at der på siden kommer til at stå \'Tekst1Tekst2\')

/Morten.

Avatar billede senj Nybegynder
31. august 2001 - 09:06 #1
Jeg er ikke helt sikker på hvad det er du efterspørger!

Et eks.

<html>
<head>

<script language=javascript>
function visTekst()
{
  document.write(\"Tekst2\");
}
</script>
</head>

<body>
tekst1

</body>

<script>visTekst();</script>

</html>

Gic mig et hint!
Avatar billede harleydk Nybegynder
31. august 2001 - 09:18 #2
Jeg skulle måske have forklaret mig tydeligere. Lad mig prøve med et andet eksempel:

<html>
<head>

<script language=javascript>
function visTekst()
{
document.write(\"Tekst2\");
}
</script>
</head>

<body>

Tekst1

<input
  type=\"button\"   
  name=\"knap\"
  onClick=\"visTekst()\">

</body>
</html>


Her viser siden \'Tekst1\' når den hentes. Når så brugeren trykker på knappen, vil jeg have at der skal tilføjes \'Tekst2\' til siden, så at der står \'Tekst1Tekst2\'. Men document.write i den kaldte funktion skriver sin parameter til en helt ny side -- og det er dét, jeg gerne vil undgå.
Avatar billede senj Nybegynder
31. august 2001 - 09:46 #3
Ok - hvad med denne?

<html>
<head>

<script language=javascript>
function visTekst(streng)
{
var a = streng;
document.write(\"Tekst2\"+a);
}
</script>
</head>

<body>

Tekst1

<input
  type=\"button\"   
  name=\"knap\"
  onClick=\"visTekst(\'Tekst1\')\">

</body>
</html>
Avatar billede harleydk Nybegynder
31. august 2001 - 09:54 #4
En alternativ løsning -- men ikke helt det, jeg er ude efter. Jeg skal have teksten (\"tekst2\") ind på den side, som kalder funktionen. Dvs. der må ikke skiftes til et nyt dokument.
Avatar billede senj Nybegynder
31. august 2001 - 10:17 #5
En kommentar

You can omit the document.open call if you are writing text or HTML, since write does an implicit open of that MIME type if the document stream is closed.
You can refer to the anchors, forms, and links of a document by using the anchors, forms, and links arrays. These arrays contain an entry for each anchor, form, or link in a document and are properties of the document object.

Avatar billede senj Nybegynder
31. august 2001 - 10:18 #6
Hvad siger du til det?
Avatar billede harleydk Nybegynder
31. august 2001 - 10:46 #7
Mig ikke forstå?
Avatar billede roenving Novice
31. august 2001 - 12:04 #8
Hvis du skal tilføje på en side, skal du kende sidens indhold først -- eller også skal du definere et område, som du kan hente indholdet fra, f.eks. en <div>, hvor du kan hente .innerHtml og overskrive med tillagt tekst.

hth
jes
Avatar billede harleydk Nybegynder
31. august 2001 - 12:42 #9
Mig forstå. Tak for oversættelsen. Point til dig, og helt perfekt vil det være hvis du har en god link, hvor man kan lave lidt selvstudie om ovenstående.

/Morten.
Avatar billede roenving Novice
31. august 2001 - 14:08 #10
Hvis du går ind denne vej, er der bunker af godt stof:

http://www.javascripter.net/faq/javascr4.htm

mvh
jes
Avatar billede Slettet bruger
31. august 2001 - 16:16 #11
Her er det script, du søger:

<script>
<!--

tekst = \"Din tekst\"

function tilføjTekst() {
if (document.all) {
document.all.skrivHer.innerHTML = tekst
}
else if (document.layers) {
document.nsilayer.document.nslayer.document.write(tekst)
}
}

//-->
</script>

Og så skal du placere det her HTML, der hvor du vil have din tekst:
<span id=\"skrivHer\"></span>
<ilayer id=\"nsilayer\"><layer id=\"nslayer\"></layer></ilayer>

Nu virker det i både IE og NS!
Avatar billede harleydk Nybegynder
31. august 2001 - 22:02 #12
Det var fin inspiration -- tak for det.

/Morten.
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