การเปลี่ยนแปลงเนื้อหา ใน Html Dom

#พื้นฐานการเขียนเว็ปไซต์

#javascript

#Dom_javascript

การเปลี่ยนแปลงเนื้อหา HTML โดยใช้ HTML DOM

การเปลี่ยนแปลงเนื้อหาใน HTML โดยใช้ HTML DOM (Document Object Model) โดยหลัก ๆ แล้วจะทำผ่าน JavaScript โดยการเข้าถึงองค์ประกอบ (element) ที่ต้องการและแก้ไขคุณสมบัติ (properties) ของมัน นี่คือวิธีที่ใช้บ่อยที่สุด:

1. การเปลี่ยนเนื้อหาข้อความ (Text Content)

ใช้คุณสมบัติ .textContent หรือ .innerText เพื่อเปลี่ยนข้อความภายในองค์ประกอบ HTML:

.textContent: ตั้งค่าหรือส่งคืนเนื้อหาข้อความขององค์ประกอบและผู้สืบทอด (descendants) ทั้งหมด โดยไม่สนใจการจัดรูปแบบ HTML (เช่น แท็ก <br>)

.innerText: ตั้งค่าหรือส่งคืนเนื้อหาข้อความที่ "มองเห็นได้" ขององค์ประกอบ โดยจะคำนึงถึงการจัดรูปแบบ CSS (เช่น จะไม่รวมข้อความที่ถูกซ่อนโดย display: none;)

ตัวอย่าง:

HTML

<p id="myParagraph">ข้อความเดิม</p>

<script>

// เลือกองค์ประกอบ <p> ด้วย id

const pElement = document.getElementById("myParagraph");

// เปลี่ยนเนื้อหาข้อความ

pElement.textContent = "ข้อความใหม่ที่ถูกเปลี่ยนโดย DOM";

// หรือ pElement.innerText = "ข้อความใหม่ที่ถูกเปลี่ยนโดย DOM";

</script>

2. การเปลี่ยนเนื้อหา HTML (HTML Content)

ใช้คุณสมบัติ .innerHTML เพื่อเปลี่ยนเนื้อหา HTML ทั้งหมดภายในองค์ประกอบ ซึ่งสามารถรวมถึงแท็ก HTML อื่นๆ ได้:

ตัวอย่าง:

HTML

<div id="myDiv">

<p>เนื้อหาเดิม</p>

</div>

<script>

// เลือกองค์ประกอบ <div> ด้วย id

const divElement = document.getElementById("myDiv");

// เปลี่ยนเนื้อหาเป็น HTML ใหม่ (รวมแท็ก <strong> และ <em>)

divElement.innerHTML = "<h2>หัวข้อใหม่</h2><p><strong>ข้อความที่ถูก <em>เน้น</em></strong></p>";

</script>

ข้อควรระวัง: การใช้ .innerHTML กับข้อมูลที่มาจากผู้ใช้ที่ไม่น่าเชื่อถืออาจทำให้เกิดช่องโหว่ XSS (Cross-Site Scripting) ได้ ควรใช้ .textContent เมื่อต้องการเปลี่ยนเพียงแค่ข้อความเท่านั้น เพื่อความปลอดภัย

3. การเปลี่ยนคุณสมบัติ (Attributes) ขององค์ประกอบ

ใช้เมธอด .setAttribute() หรือการเข้าถึงคุณสมบัติโดยตรงเพื่อเปลี่ยนค่าของแอตทริบิวต์:

ตัวอย่าง:

HTML

<img id="myImage" src="old_image.jpg" alt="ภาพเดิม">

<script>

const imgElement = document.getElementById("myImage");

// 1. เปลี่ยนแอตทริบิวต์ 'src' โดยตรง

imgElement.src = "new_image.png";

// 2. เปลี่ยนแอตทริบิวต์ 'alt' โดยใช้ setAttribute

imgElement.setAttribute("alt", "ภาพใหม่");

// 3. เปลี่ยนแอตทริบิวต์ 'class'

imgElement.className = "active-state";

</script>

สรุปขั้นตอนการเปลี่ยนแปลงเนื้อหา:

ค้นหา (Find): ใช้เมธอด DOM เช่น document.getElementById(), document.querySelector(), document.getElementsByClassName() เพื่อเลือกองค์ประกอบเป้าหมาย

เปลี่ยนแปลง (Change): ใช้คุณสมบัติต่าง ๆ เช่น .textContent, .innerHTML, .src, .setAttribute() เพื่อแก้ไขเนื้อหาหรือคุณสมบัติขององค์ประกอบที่เลือก

2025/10/28 แก้ไขเป็น

... อ่านเพิ่มเติมDOM คืออะไร (อธิบายแบบคนเริ่มทำเว็บ) ตอนเราเริ่มเขียนเว็บใหม่ ๆ คำว่า “DOM” โผล่มาบ่อยมาก โดยเฉพาะเวลาอยากทำให้หน้าเว็บเปลี่ยนข้อความ เปลี่ยนรูป หรือกดปุ่มแล้วมีอะไรเกิดขึ้น สรุปสั้น ๆ DOM (Document Object Model) คือ “โครงสร้างของหน้าเว็บ” ที่เบราว์เซอร์สร้างขึ้นมาจาก HTML ของเรา แล้วเปิดให้ JavaScript เข้ามาอ่าน/แก้ไขได้เหมือนเป็นต้นไม้ (tree) ของ node และ element ทำไมต้องเข้าใจ DOM? เพราะเวลาพูดว่า “เปลี่ยนหน้าเว็บด้วย JavaScript” จริง ๆ คือเราไม่ได้ไปแก้ไฟล์ HTML โดยตรง แต่เราไปแก้ DOM ที่กำลังแสดงอยู่ในเบราว์เซอร์ เช่น เปลี่ยนข้อความใน <p>, ใส่ HTML ใหม่ใน <div>, หรือเปลี่ยน attribute ของ <img> ภาพรวมขั้นตอนที่ใช้บ่อย (จำง่าย ๆ) 1) Find: หา element ที่ต้องการ - document.getElementById("...") - document.querySelector("...") (แนะนำเพราะใช้ selector แบบ CSS) 2) Change: เปลี่ยนสิ่งที่ต้องการ - เปลี่ยนข้อความ: .textContent หรือ .innerText - เปลี่ยนโค้ด HTML ข้างใน: .innerHTML - เปลี่ยน attribute: .setAttribute() หรือเปลี่ยน property ตรง ๆ เช่น img.src ตัวอย่างที่เจอบ่อยในงานจริง - อยากอัปเดตข้อความสถานะ เช่น “กำลังโหลด...” -> “เสร็จแล้ว” ผมจะใช้ textContent เป็นหลัก เพราะปลอดภัยและไม่ต้องสนใจแท็ก HTML: const status = document.querySelector('#status'); status.textContent = 'เสร็จแล้ว'; - อยากใส่โครงสร้าง HTML เพิ่ม เช่น สร้างรายการหรือหัวข้อย่อย อันนี้ค่อยใช้ innerHTML แต่ต้องมั่นใจว่า string ไม่ได้มาจากผู้ใช้แบบสุ่ม ๆ: const box = document.querySelector('.result'); box.innerHTML = '<h2>ผลลัพธ์</h2><p>อัปเดตแล้ว</p>'; ข้อควรระวังที่หลายคนพลาด: innerHTML และ XSS ถ้าคุณเอาข้อความจากช่อง input หรือข้อมูลที่ผู้ใช้ส่งมา แล้วยัดเข้า innerHTML ตรง ๆ อาจโดนฝังสคริปต์ (XSS) ได้ ทางที่ปลอดภัยคือ: - ถ้าเป็น “ข้อความล้วน” ใช้ textContent - ถ้าจำเป็นต้องสร้าง element ให้ใช้ document.createElement() + appendChild() (ปลอดภัยกว่า innerHTML) สรุปสั้น ๆ ให้จำ DOM คือสะพานระหว่าง HTML กับ JavaScript: เรา “หา element” ใน DOM แล้ว “แก้เนื้อหา/คุณสมบัติ” ด้วย textContent, innerText, innerHTML, และ setAttribute() ถ้าเน้นปลอดภัยให้เริ่มจาก textContent ก่อน แล้วค่อยขยับไปใช้ innerHTML เมื่อจำเป็นจริง ๆ

โพสต์ที่เกี่ยวข้อง

ภาพบุคคลถือโทรศัพท์มือถือบังหน้าจอคอมพิวเตอร์ที่แสดงโค้ด พร้อมข้อความว่า "คำศัพท์ HTML ที่คนเขียนโค้ด ต้องรู้!!" และ "ส่วนผมก็ยังไม่รู้" เน้นย้ำถึงคำศัพท์ HTML ที่จำเป็นสำหรับนักพัฒนา
ภาพแสดงรายการคำศัพท์ HTML 10 คำแรก ได้แก่ Tag, Doctype, Head, Meta, Heading, Image, Body, Anchor, Div และ HTML พร้อมคำอธิบายสั้นๆ บนพื้นหลังหน้าจอคอมพิวเตอร์ที่แสดงโค้ด
ภาพแสดงรายการคำศัพท์ HTML ลำดับที่ 11-20 ได้แก่ Span, Break, Horizontal Rule, Form, Input, Button, Textarea, Blockquote, Placeholder และ Bold พร้อมคำอธิบายสั้นๆ บนพื้นหลังหน้าจอคอมพิวเตอร์ที่แสดงโค้ด
คำศัพท์ HTML ที่คนเขียนโค้ดต้องรู้ !✨
1. Tag - เครื่องหมายที่ใช้กำหนดโครงสร้างของ HTML 2. Doctype (<!DOCTYPE html>) - ประกาศเวอร์ชันของ HTML ที่ใช้ 3. Head - ส่วนที่ใช้กำหนดข้อมูลของเอกสาร(metadata) 4. Meta - แท็กที่ใช้กำหนดข้อมูลเกี่ยวกับเอกสาร เช่น charset, description 5. Heading (<h1> - <h6>) - หัวข้อของเนื้อหา
Dekrian_04

Dekrian_04

ถูกใจ 301 ครั้ง

ภาพแสดงหน้าปกสรุปเคมี ม.ต้น พร้อมหัวข้อเนื้อหาหลัก ได้แก่ สมบัติตามตารางธาตุ ธาตุกัมมันตรังสี พันธะเคมี และสูตรสารประกอบ
ภาพตารางธาตุพร้อมคำอธิบายการจัดกลุ่มธาตุต่างๆ เช่น โลหะแอลคาไล โลหะแอลคาไลน์เอิร์ท แฮโลเจน แก๊สเฉื่อย และธาตุทรานซิชัน รวมถึงคำจำกัดความของโลหะ อโลหะ และกึ่งโลหะ
ภาพสรุปสมบัติของธาตุหมู่ 1A, 2A และ 7A รวมถึงคำจำกัดความของสารบริสุทธิ์ที่เป็นสารเนื้อเดียว (ธาตุและสารประกอบ) และสารประกอบ
สรุปเคมี ม.ต้นเนื้อหา พร้อมตัวอย่าง
โหลดไฟล์ 👉🏻👉🏻👉🏻 ใต้เม้นเยยย #สรุปเคมี #dek73 #เคมี
ppyy♥️

ppyy♥️

ถูกใจ 105 ครั้ง

ภาพปกบทความเรื่อง '9 ช็อตสำคัญในการเล่าเรื่องด้วยภาพ (ยกระดับงาน VDO)' แสดงภาพบุคคลกำลังถืออุปกรณ์ถ่ายทำในที่มืด มีข้อความชื่อบทความสีขาวและโลโก้ Lemon8 พร้อมชื่อผู้ใช้ @yam1985production
ภาพตัวอย่าง Wide Shot (WS) แสดงภาพมุมกว้างของบุคคลกำลังเดินอยู่บนลานกว้างกลางแจ้ง มีสิ่งก่อสร้างคล้ายวัดและต้นไม้เป็นฉ�ากหลัง เพื่อกำหนดบริบทของสถานที่และตัวละคร
ภาพตัวอย่าง Medium Shot (MS) แสดงบาริสต้าหญิงกำลังรินนมลงในแก้วกาแฟอย่างตั้งใจ เน้นการกระทำของตัวแบบและปฏิสัมพันธ์กับวัตถุรอบตัว
9 ช็อตสำคัญในการเล่าเรื่องด้วยภาพ
1. Wide Shot (WS) แสดงภาพรวมของสถานที่และตัวละคร กำหนดบริบทให้ผู้ชมเข้าใจว่าเหตุการณ์เกิดขึ้นที่ไหน และใครอยู่ในเหตุการณ์ 2. Medium Shot (MS) เน้นการกระทำของตัวแบบ ช่วยให้ผู้ชมเห็นการเคลื่อนไหว และความสัมพันธ์กับสิ่งรอบตัว 3. Close-Up (CU) ใช้สื่อสารอารมณ์ หรือเน้นรายละเอียดสำคัญ เช่น สีหน
1985Production

1985Production

ถูกใจ 13 ครั้ง

ภาพหญิงสาวถือโทรศัพท์มือถือ พร้อมข้อความ 'แจก 10 ประเด็น โรแมนติกไซส์ ที่ควรระวังในการแต่งนิยาย' และภาพหน้าจอแสดงยอดขายหนังสือ 90,932.60 บาท พร้อมโลโก้ Lemon8
ภาพอธิบายความหมายของ 'โรแมนติกไซส์' คือการทำให้สิ่งไม่ดีดูสวยงามในนิยายหรือหนัง พร้อมยกตัวอย่างความรักที่ควบคุม การล่วงละเมิด และความสัมพันธ์ไม่ยินยอมที่ถูกทำให้ดูดี
ภาพอธิบายเหตุผลที่ควรระวังการโรแมนติกไซส์ 2 ข้อแรก: ทำให้คนอ่านเข้าใจผิดเรื่องความรัก และทำให้ประเด็นความรุนแรงกลายเป็นเรื่องแฟนตาซี
10 ประเด็นโรแมนติกไซส์ที่ควรระวังในการแต่งนิยาย
💬 "โรแมนติกไซส์" (Romanticize) คืออะไร? การโรแมนติกไซส์ หมายถึง “การทำให้สิ่งที่ไม่ดี ดูสวยงาม ดูเป็นเรื่องน่ารัก น่าใฝ่ฝัน โดยเฉพาะในนิยายหรือหนัง” ตัวอย่างที่พบบ่อย: * ความรักที่ควบคุม → กลายเป็น "เขาหวงเรา เพราะเขารัก" * การล่วงละเมิด → กลายเป็น "เขารุกแรงเพราะเขาทนไม่ไหว
It’s mintie.

It’s mintie.

ถูกใจ 595 ครั้ง

ภาพปกแพลนเนอร์เตรียมสอบเข้ามหาวิทยาลัยสำหรับนักเรียน ม.5 แยกตามคณะ
แพลนเนอร์เตรียมสอบเข้าคณะบัญชี-บริหาร สำหรับ ม.5 แสดงช่วงเวลาอ่าน TGAT และ A-Level วิชาคณิต 1, คณิต 2, ไทย, สังคม, อังกฤษ
แพลนเนอร์เตรียมสอบเข้าคณะ กสพท สำหรับ ม.5 แสดงช่วงเวลาอ่าน TPAT1 และ A-Level วิชาคณิต 1, ฟิสิกส์, ไทย, สังคม, อังกฤษ พร้อมหมายเหตุวันสอบ
แจกฟรี ! แพลนเก็บเนื้อหา ม.5 แยกตามรายคณะ 📝
#Dek70 หลาย ๆ คนอาจจะยังไม่รู้ว่า ถ้าเราอยากเข้าคณะนี้ ควรเริ่มเก็บเนื้อหา วิชาไหนก่อน-หลังดี ? โพสต์นี้พี่มีคำตอบ ! . ใครที่อยากเข้าคณะสายเหล่านี้ . 🧮 บัญชี - บริหาร 🩺 กสพท ⚙️ วิศวกรรมศาสตร์ 🎬 นิเทศศาสตร์ 👩🏻‍🏫 ครุศาสตร์ 👨🏻‍⚖️ นิติศาสตร์ 🧪 วิทย์สุขภาพ 📚 มนุษยศาสตร์ . เซฟเก็บไว้เลย
SmartMathPro

SmartMathPro

ถูกใจ 1334 ครั้ง

เนื้อหาCalculas สำหรับก่อนทำโจทย์ Warmup section2
section2 #ติดเทรนด์ #แบบฝึกหัดคณิตศาสตร์ #แบบฝึกหัดคณิตศาสตร์
MATHOPHY

MATHOPHY

ถูกใจ 4 ครั้ง

โครงสร้าง HTML คืออะไร? 🌐
💡 HTML เป็นรากฐานของทุกเว็บไซต์ 🌐 หากเข้าใจโครงสร้างพื้นฐานเหล่านี้ จะช่วยให้การพัฒนาเว็บด้วย HTML, CSS, Bootstrap และ JavaScript ง่ายขึ้นมาก คุณจำ Tag ไหนได้บ้าง? #HTML #Programming #it #ITeveryday #Lemon8
ITeveryday

ITeveryday

ถูกใจ 3 ครั้ง

สรุป พ.ร.บ.ระเบียบบริหารราชการแผ่นดิน พ.ศ.2534 แสดงหลักการบริหารราชการ, การจัดระเบียบบริหารราชการแผ่นดินส่วนกลาง ภูมิภาค และท้องถิ่น พร้อมรายละเอียดการจัดระเบียบราชการส่วนกลาง เช่น สํานักนายกรัฐมนตรี กระทรวง ทบวง กรม
สรุป พ.ร.ฎ. การบริหารกิจการบ้านเมืองที่ดี พ.ศ.2546 พร้อมคําจํากัดความของรัฐวิสาห��กิจ ข้าราชการ และส่วนราชการ รวมถึงหลักการบริหารกิจการบ้านเมืองที่ดี 7 ประการ และหลักประโยชน์สุขของประชาชน 3 ประการ
สรุป พ.ร.บ.วิธีปฏิบัติราชการทางปกครอง พ.ศ.2539 ระบุข้อยกเว้นที่ พ.ร.บ.นี้ไม่บังคับใช้ และคําจํากัดความของวิธีปฏิบัติราชการทางปกครอง การพิจารณาทางปกครอง และคําสั่งทางปกครอง
ไฟล์สรุปเนื้อหากฎหมาย ก.พ.69
#สรุป #สอบกพ #แนวข้อสอบ #อ่านหนังสือ #สรุปกฎหมาย
เตรียมสอบให้ปัง

เตรียมสอบให้ปัง

ถูกใจ 231 ครั้ง

เนื้อหาวิชาการศึกษา
#ครู #สอบครูผู้ช่วย #ติวสอบ #อ่านสอบคร฿
ภาษาอังกฤษติวเข้ม

ภาษาอังกฤษติวเข้ม

ถูกใจ 25 ครั้ง

เรียนสังคมให้เก่ง.....ต้องรู้เนื้อหากันก่อนนะ!!!!
#สังคมศึกษา #แจกสรุป #แนะแนวการศึกษา อย่างรู้มั้ย... ว่าตั้งแต่ ม.1-3 ต้องเรียนอะไรบ้าง วันนี้สรุปมาให้แล้วค่ะ!!!!! 🗣️แนะนำเพิ่มเติม: ก่อนอ่านหนังสือควรอ่านเนื้อหาก่อนนะค่ะไม่ใช้แค่วิชาสังคม วิชาอื่นๆด้วย ถึงแม้สังคมจะเป็นวิชาที่น่าเบื่อ....แต่ถ้าเราตั้งใจจริงวิชาที่เราว่ายากอย่างวิชาส
Mild.ploy

Mild.ploy

ถูกใจ 20 ครั้ง

แจกเนื้อหา
#ตำราเรียน #แนะแนวการศึกษา #แจกสรุป แจกฟรี........ อีกแล้วนะ คราวนี้.... ต่อ EP.2 ครบจบ ทุกวิชา ไทย อังกฤษ คณิต วิทย์ สังคม[ ลงให้แล้วค่ะ ]
Mild.ploy

Mild.ploy

ถูกใจ 14 ครั้ง

การจัดการ Dom node
#พื้นฐานการเขียนเว็ปไซต์ #javascript #domnode การจัดการ DOM Node (DOM Manipulation) ใน JavaScript คือ กระบวนการที่ใช้โค้ด JavaScript ในการเข้าถึง, เปลี่ยนแปลง, เพิ่ม, หรือลบองค์ประกอบต่างๆ (Nodes) ที่ประกอบกันเป็นโครงสร้างหน้าเว็บ (DOM Tree) ครับ 🌳.มันคือสิ่งที่ทำให้เว็บเพจจากเดิมที่เป็
ขีดเขียน

ขีดเขียน

ถูกใจ 3 ครั้ง

การเรียน HTMLคือก้าวสำคัญของการเปลี่ยนแปลงเว็บไซต์
#ClinicWeb #เว็บไซต์ #เขียนเว็บไซต์ #website #html
Clinic Web

Clinic Web

ถูกใจ 4 ครั้ง

เนื้อหาCALCULUS อินทิเกรต โจทย์WARMUP section3.1
section3.1 แบบฝึกปฏิยานุพันธ์ #ติดเทรนด์ #แบบฝึกหัดคณิตศาสตร์ #หนังสือ
MATHOPHY

MATHOPHY

ถูกใจ 2 ครั้ง

ปีนี้เปลี่ยนแปลงเรื่องอะไรบ้าง?🦋🗺️
💜MEVATEMON 🦋 ทำเพื่อการไกด์ไลน์ ห้ามซีเรียสน้า เรียนรู้ในการใช้ชีวิตด้วยตัวเองนะคะ มนุษย์ที่แท้จริงมีหลายองค์ประกอบมากๆเลยค่ะ #ดูดวง #Mevatemon #ดวงความรัก #พลังใจ #destinymatrix
➴MEVATEMON 🦋🧚‍♀️💜

➴MEVATEMON 🦋🧚‍♀️💜

ถูกใจ 13 ครั้ง

สวดหนึ่งจบ ใจถึงพระ: วิธีสร้าง “กำลังจิต” ในการสวดคาถามหาจักรพรรดิ
สวดหนึ่งจบ ใจถึงพระ: วิธีสร้าง “กำลังจิต” ในการสวดคาถามหาจักรพรรดิสวดหนึ่งจบ ใจถึงพระ: วิธีสร้าง “กำลังจิต” ในการสวดคาถามหาจักรพรรดิ หลายคนสวดคาถามหาจักรพรรดิทุกวัน วันละ 108 จบ แต่ยังรู้สึกว่าชีวิตไม่เปลี่ยนแปลง ไม่สงบ ไม่เบาสบายอย่างที่คาดหวัง ในขณะที่บางคนสวดเพียง 1 จบ กลับสัมผัสได้ถึงความอิ่
Moutain

Moutain

ถูกใจ 4 ครั้ง

A-Level สังคมเนื้อหาเยอะมากก อ่านยังไงให้เอาอยู่ !
#Alevel #สังคม #สอบเข้ามหาวิทยาลัย #SmartMathPro
SmartMathPro

SmartMathPro

ถูกใจ 22 ครั้ง

ดูเพิ่มเติม