0Pricing
HTML Academy · บทเรียน

Textarea สำหรับการป้อนข้อมูลหลายบรรทัด

รวบรวมข้อความหลายบรรทัดด้วยองค์ประกอบ textarea

Textarea สำหรับการป้อนข้อมูลหลายบรรทัด เป็นบทเรียน HTML Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน HTML Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส HTML Academy มีบทเรียนทั้งหมด 4 บทเรียน

องค์ประกอบ textarea

องค์ประกอบ <textarea> รองรับข้อความหลายบรรทัด:

<label for="message">Message</label>
<textarea
  id="message"
  name="message"
  rows="5"
  cols="40"
  placeholder="Enter your message here..."
></textarea>
<!-- textarea is NOT a void element -- it has a closing tag -->
<!-- Default content goes between the tags, not in a value attribute -->

แอตทริบิวต์ rows และ cols

rows และ cols กำหนดขนาดเริ่มต้นที่มองเห็นได้:

<!-- rows: height in lines (default: 2) -->
<!-- cols: width in characters (default: 20) -->
<textarea rows="6" cols="50">...</textarea>

<!-- Better: use CSS for sizing -->
<textarea style="width: 100%; height: 150px; resize: vertical;">

การกำหนดเนื้อหาเริ่มต้น

ข้อความเริ่มต้นจะอยู่ระหว่างแท็กเปิดและแท็กปิด:

<textarea name="bio">
Hello! I am a developer who loves HTML.
</textarea>
<!-- Note: whitespace inside textarea IS rendered -->
<!-- The newline after the opening tag will appear in the textarea -->
<!-- Avoid whitespace between tags if you don't want it -->

การปรับขนาดด้วย CSS

ควบคุมการปรับขนาดโดยผู้ใช้ด้วยคุณสมบัติ resize ของ CSS:

textarea {
  resize: vertical;    /* allow only vertical resize */
  /* resize: horizontal -- only horizontal */
  /* resize: both      -- both directions (default) */
  /* resize: none      -- prevent resizing */

  width: 100%;
  min-height: 120px;
  max-height: 400px;
  padding: 0.5rem;
  box-sizing: border-box;
}

Textarea ที่ขยายอัตโนมัติ

ทำให้ textarea ขยายตามการพิมพ์ของผู้ใช้ด้วย JavaScript:

<textarea id="auto-grow" rows="3" style="overflow: hidden;"></textarea>

<script>
const ta = document.getElementById('auto-grow');
ta.addEventListener('input', () => {
  ta.style.height = 'auto';
  ta.style.height = ta.scrollHeight + 'px';
});
</script>

maxlength และ minlength

จำกัดความยาวข้อความใน textarea:

<label for="bio">Bio (max 500 characters)</label>
<textarea
  id="bio"
  name="bio"
  maxlength="500"
  minlength="10"
  rows="4"
></textarea>

<!-- Live character count: -->
<small id="char-count">0/500</small>
<script>
document.getElementById('bio').addEventListener('input', function() {
  document.getElementById('char-count').textContent =
    this.value.length + '/500';
});
</script>

แอตทริบิวต์ spellcheck

แอตทริบิวต์ spellcheck ควบคุมการตรวจการสะกด:

<!-- Enable (default for textarea) -->
<textarea spellcheck="true">...</textarea>

<!-- Disable (for code editors, technical input) -->
<textarea spellcheck="false">...</textarea>

แอตทริบิวต์ wrap

แอตทริบิวต์ wrap ควบคุมวิธีส่งข้อความที่ตัดบรรทัด:

<!-- wrap="soft" (default): text wraps visually but newlines not added -->
<textarea wrap="soft">...</textarea>

<!-- wrap="hard": newlines inserted at wrap points when submitted -->
<!-- Requires cols to be set -->
<textarea wrap="hard" cols="40">...</textarea>

readonly และ disabled

ทำให้ textarea ไม่สามารถแก้ไขได้:

<!-- readonly: visible, selectable, submitted -->
<textarea readonly>This is read-only text.</textarea>

<!-- disabled: cannot interact, not submitted -->
<textarea disabled>Disabled textarea.</textarea>

การเข้าถึง Textarea

ข้อควรรู้ด้านการเข้าถึงสำหรับ textarea:

  • เชื่อมโยง <label> ด้วย for/id เสมอ
  • ใช้ aria-describedby เพื่อเชื่อมโยงข้อความช่วยเหลือหรือตัวนับอักขระ
  • ประกาศการเปลี่ยนแปลงขีดจำกัดอักขระให้โปรแกรมอ่านหน้าจอทราบด้วยบริเวณแบบไลฟ์
<label for="comment">Comment</label>
<textarea id="comment" aria-describedby="comment-hint"></textarea>
<p id="comment-hint">Maximum 200 characters.</p>

การจัดรูปแบบ Textarea

การจัดรูปแบบ textarea ที่ใช้บ่อย:

textarea {
  width: 100%;
  padding: 0.75rem;
  border: 1px solid #ddd;
  border-radius: 0.375rem;
  font-family: inherit;    /* match surrounding font */
  font-size: 1rem;
  line-height: 1.5;
  resize: vertical;
  min-height: 100px;
  box-sizing: border-box;
  transition: border-color 0.2s;
}
textarea:focus {
  outline: none;
  border-color: #0070f3;
  box-shadow: 0 0 0 3px rgba(0,112,243,0.2);
}

ตรวจสอบอย่างรวดเร็ว

จะกำหนดข้อความที่กรอกไว้ล่วงหน้าใน textarea ได้อย่างไร

สรุป: Textarea

สาระสำคัญของ textarea:

  • ช่องป้อนข้อความหลายบรรทัดที่มีแท็กปิด
  • เนื้อหาเริ่มต้นอยู่ระหว่างแท็กเปิดและแท็กปิด (ไม่ใช่แอตทริบิวต์ value)
  • rows และ cols กำหนดขนาดเริ่มต้น ควรเลือกใช้ CSS
  • maxlength และ minlength ควบคุมความยาว
  • resize: vertical ใน CSS ใช้ควบคุมการปรับขนาด
  • การขยายอัตโนมัติ: กำหนด height: scrollHeight เมื่อเกิดเหตุการณ์ input

คำถามที่พบบ่อย

บทเรียน “Textarea สำหรับการป้อนข้อมูลหลายบรรทัด” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “Textarea สำหรับการป้อนข้อมูลหลายบรรทัด” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส HTML Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส HTML Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “Textarea สำหรับการป้อนข้อมูลหลายบรรทัด”

รวบรวมข้อความหลายบรรทัดด้วยองค์ประกอบ textarea คุณปฏิบัติ HTML Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน HTML Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน HTML Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน

บทเรียน “Textarea สำหรับการป้อนข้อมูลหลายบรรทัด” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน HTML Academy นี้ได้ไหม

ได้ บทเรียน HTML Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. เมนูแบบดรอปดาวน์ด้วย Select และ option
  2. Textarea สำหรับการป้อนข้อมูลหลายบรรทัด
  3. กลุ่มช่องทำเครื่องหมายและปุ่มตัวเลือก
  4. Datalist สำหรับการเติมข้อความอัตโนมัติ
← กลับไปที่ HTML Academy