JavaScript HTML DOM - การเปลี่ยน HTML
HTML DOM อนุญาตให้ JavaScript เปลี่ยนเนื้อหาขององค์ประกอบ HTML
การเปลี่ยนเนื้อหา HTML
วิธีที่ง่ายที่สุดในการแก้ไขเนื้อหาขององค์ประกอบ HTML คือการใช้innerHTML
คุณสมบัติ
หากต้องการเปลี่ยนเนื้อหาขององค์ประกอบ HTML ให้ใช้ไวยากรณ์นี้:
document.getElementById(id).innerHTML = new HTML
ตัวอย่างนี้เปลี่ยนเนื้อหาของ<p>
องค์ประกอบ:
ตัวอย่าง
<html>
<body>
<p id="p1">Hello World!</p>
<script>
document.getElementById("p1").innerHTML = "New text!";
</script>
</body>
</html>
ตัวอย่างอธิบาย:
- เอกสาร HTML ด้านบนมี
<p>
องค์ประกอบ withid="p1"
- เราใช้ HTML DOM เพื่อรับองค์ประกอบด้วย
id="p1"
- JavaScript เปลี่ยนเนื้อหา (
innerHTML
) ขององค์ประกอบนั้นเป็น "ข้อความใหม่!"
ตัวอย่างนี้เปลี่ยนเนื้อหาของ<h1>
องค์ประกอบ:
ตัวอย่าง
<!DOCTYPE html>
<html>
<body>
<h1 id="id01">Old Heading</h1>
<script>
const element = document.getElementById("id01");
element.innerHTML = "New Heading";
</script>
</body>
</html>
ตัวอย่างอธิบาย:
- เอกสาร HTML ด้านบนมี
<h1>
องค์ประกอบ withid="id01"
- เราใช้ HTML DOM เพื่อรับองค์ประกอบด้วย
id="id01"
- JavaScript เปลี่ยนเนื้อหา (
innerHTML
) ขององค์ประกอบนั้นเป็น "หัวเรื่องใหม่"
การเปลี่ยนค่าของแอตทริบิวต์
หากต้องการเปลี่ยนค่าของแอตทริบิวต์ HTML ให้ใช้ไวยากรณ์นี้:
document.getElementById(id).attribute = new value
ตัวอย่างนี้เปลี่ยนค่าของแอตทริบิวต์ src ของ<img>
องค์ประกอบ:
ตัวอย่าง
<!DOCTYPE html>
<html>
<body>
<img id="myImage" src="smiley.gif">
<script>
document.getElementById("myImage").src = "landscape.jpg";
</script>
</body>
</html>
ตัวอย่างอธิบาย:
- เอกสาร HTML ด้านบนมี
<img>
องค์ประกอบ withid="myImage"
- เราใช้ HTML DOM เพื่อรับองค์ประกอบด้วย
id="myImage"
- JavaScript เปลี่ยน
src
แอตทริบิวต์ขององค์ประกอบนั้นจาก "smiley.gif" เป็น "landscape.jpg"
เนื้อหา HTML แบบไดนามิก
JavaScript สามารถสร้างเนื้อหา HTML แบบไดนามิกได้:
วันที่ : วันเสาร์ที่ 29 ม.ค. 2565 16:38:31 GMT+0000 (เวลาสากลเชิงพิกัด)
ตัวอย่าง
<!DOCTYPE html>
<html>
<body>
<script>
document.getElementById("demo").innerHTML = "Date : " + Date();
</script>
</body>
</html>
เอกสาร.เขียน()
ใน JavaScript document.write()
สามารถใช้เขียนโดยตรงไปยังสตรีมเอาต์พุต HTML:
ตัวอย่าง
<!DOCTYPE html>
<html>
<body>
<p>Bla bla bla</p>
<script>
document.write(Date());
</script>
<p>Bla bla bla</p>
</body>
</html>
ห้ามใช้document.write()
หลังจากโหลดเอกสารแล้ว มันจะเขียนทับเอกสาร