JavaScript DOM HTML


Innehållsförteckning

    Visa innehållsförteckning


HTML DOM tillåter JavaScript att ändra innehållet i HTML-element.


Ändra HTML-innehåll

Det enklaste sättet att ändra innehållet i ett HTML-element är att använda egenskapen innerHTML.

För att ändra innehållet i ett HTML-element, använd denna syntax:

document.getElementById(id).innerHTML = new HTML

Det här exemplet ändrar innehållet i ett ><p>-element:

Exempel

<html>
<body>

<p id="p1">Hello World!</p>

<script>
document.getElementById("p1").innerHTML = "New text!";
</script>

</body>
</html>

Prova själv →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript can Change HTML</h2>

<p id="p1">Hello World!</p>

<script>
document.getElementById("p1").innerHTML = "New text!";
</script>

<p>The paragraph above was changed by a script.</p>

</body>
</html>

Exempel förklarat:

  • HTML-dokumentet ovan innehåller ett <p>-element med id="p1"

  • Vi använder HTML DOM för att hämta elementet med id="p1"

  • En JavaScript ändrar innehållet (innerHTML) i det elementet till "Ny text!"

Det här exemplet ändrar innehållet i ett -element:

Exempel

<!DOCTYPE html>
<html>
<body>

<h1 id="id01">Old Heading</h1>

<script>
const element = document.getElementById("id01");
element.innerHTML = "New Heading";
</script>

</body>
</html>

Prova själv →

<!DOCTYPE html>
<html>
<body>

<h1 id="id01">Old Heading</h1>

<script>
const element = document.getElementById("id01");
element.innerHTML = "New Heading";
</script>

<p>JavaScript changed "Old Heading" to "New Heading".</p>

</body>
</html> 

Exempel förklarat:

  • HTML-dokumentet ovan innehåller ett <h1>-element med id="id01"

  • Vi använder HTML DOM för att hämta elementet med id="id01"

  • En JavaScript ändrar innehållet (innerHTML) i det elementet till "Ny Rubrik"



Ändra värdet på ett attribut

För att ändra värdet på ett HTML-attribut, använd denna syntax:

document.getElementById(id).attribute = new value

Det här exemplet ändrar värdet på src-attributet för ett <img>-element:

Exempel

<!DOCTYPE html>
<html>
<body>

<img id="myImage" src="smiley.gif">

<script>
document.getElementById("myImage").src = "landscape.jpg";
</script>

</body>
</html>

Prova själv →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript HTML DOM</h2>
<img id="image" src="smiley.gif" width="160" height="120">

<script>
document.getElementById("image").src = "landscape.jpg";
</script>

<p>The original image was smiley.gif, but the script changed it to landscape.jpg</p>

</body>
</html>

Exempel förklarat:

  • HTML-dokumentet ovan innehåller ett <img>-element med id="myImage"

  • Vi använder HTML DOM för att hämta elementet med id="myImage"

  • En JavaScript ändrar attributet src för det elementet från "smiley.gif" till "landscape.jpg"


Dynamiskt HTML-innehåll

JavaScript kan skapa dynamiskt HTML-innehåll:

Exempel

<!DOCTYPE html>
<html>
<body>

<script>
document.getElementById("demo").innerHTML = "Date : " + Date();
</script>

</body>
</html>

Prova själv →

<!DOCTYPE html>
<html>
<body>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML = "Date : " + Date();
</script>

</body>
</html> 

document.write()

I JavaScript kan document.write() användas för att skriva direkt till HTML-koden utgångsström:

Exempel

<!DOCTYPE html>
<html>
<body>

<p>Bla bla bla</p>

<script>
document.write(Date());
</script>

<p>Bla bla bla</p>

</body>
</html>

Prova själv →

<!DOCTYPE html>
<html>
<body>

<p>Bla, bla, bla</p>

<script>
document.write(Date());
</script>

<p>Bla, bla, bla</p>

</body>
</html> 

Använd aldrig document.write() efter att dokumentet har laddats. Det kommer skriva över dokumentet.