Document.write

Fra Kommunikation-IT Holstebro HTX
Skift til: navigering, søgning

Virkemåden af document.write()

Man kan fra javascript skrive direkte ud i siden ved hjælp af programkode, så det kommer ind blandt den HTML der er i siden. Det gør man ved hjælp af document.write(text), der som navnet siger skriver i dokumentet (altså i visningen af siden).

Koden til document.write()

En document.write() er opbygget på følgende måde:

document.write("teksten der skrives");

Hvor document.write() er den funktion der kaldes i browseren-

Og "teksten der skrives" er det der kommer ud i browservinduet.

Eksempel på document.write()

Det viste kodeeksempel sætter en variabel et sted i koden, og længere nede i koden anvendes document.write() til at skrive en tekst og variablen ud sammen.

<html>
<head>
  <title>write</title>
<script type="text/javascript" language="JavaScript">
// javaScript funktioner og variable

var tal = 70;
</script>
</head>
<body>
<h1>document.write og variabel</h1>
<p>Dette eksempel viser hvordan en variabel kan udskrives med document.write()</p>

<script type="text/javascript" language="JavaScript">
// javaScript der afvikles, når siden loades
document.write("I variablen tal står der " + tal);
</script>
</body>
</html>

Koden kan hentes i en Zip-fil.

Fordelen ved document.write()

Fordelen er at man kan automatisere en del af siden, så den er opbygget ved hjælp af kode (det kan lette arbejdet med en side der er opbygget systematisk).

Ulempen ved document.write()

Ulempen er at man kun kan anvende det effektivt idet man henter siden - prøver man at gøre det efter siden er blevet hentet ind, så forsvinder indholdet af siden (inklusiv ens program) - det sætter voldsomme begrænsninger i anvendelsen.

Eksempel på forkert brug af document.write()

Hvis man anvender document.write() til at skrive noget ud på siden efter dokumentet er loadet, så sker der det at sidens indhold forsvinder - også den javaScript kode man har lagt i siden.

Dette eksempel har altså ingen praktisk anvendelse, men er blot til at illustrere en klassisk fejl i javaScript.

<html>
<head>
  <title>Forkert brug af write</title>
<script type="text/javascript" language="JavaScript">
// javaScript funktioner og variable
var tal = 70;

function daarligFunk() {
  document.write("I variablen tal står der " + tal);
  
  document.write("<br />Alt andet i browservinduet forsvinder.");
}
</script>
</head>
<body>
<h1>document.write brugt forkert</h1>
<p>Dette eksempel viser hvordan man kan lave en fejl med document.write()</p>

<input type="button" value="Klik Her" onClick="daarligFunk();" />
</body>
</html>

Koden kan hentes i en Zip-fil.