آموزش جامع فرم‌ها در HTML


🎯 اهداف یادگیری

  • آشنایی با ساختار پایه فرم‌های HTML
  • شناخت انواع فیلدهای ورودی
  • یادگیری اعتبارسنجی فرم‌ها
  • طراحی فرم‌های حرفه‌ای و کاربرپسند

📌 مقدمه‌ای بر فرم‌های HTML

فرم‌ها ابزار اصلی جمع‌آوری اطلاعات از کاربران در وب هستند. از فرم‌ها برای ورود اطلاعات، ثبت‌نام، جستجو و بسیاری موارد دیگر استفاده می‌شود.

html
<form action="/submit" method="post">
<label for="username">نام کاربری:</label>
<input type="text" id="username" name="username">
<button type="submit">ارسال</button>
</form>

ویژگی‌های اصلی فرم:

  • action: آدرس URL که داده‌های فرم به آن ارسال می‌شوند
  • method: نوع درخواست HTTP (معمولاً GET یا POST)

📌 انواع فیلدهای ورودی

HTML انواع مختلفی از فیلدهای ورودی را برای جمع‌آوری داده‌ها ارائه می‌دهد:

html
<!-- فیلد متنی ساده -->
<input type="text" placeholder="نام خود را وارد کنید">
<!-- فیلد رمز عبور -->
<input type="password" placeholder="رمز عبور">
<!-- چک باکس -->
<input type="checkbox" id="agree">
<label for="agree">با شرایط موافقم</label>
<!-- انتخاب تاریخ -->
<input type="date" name="birthday">

انواع پرکاربرد فیلدها:

  • text: ورود متن یک خطی
  • password: ورود رمز عبور (متن پنهان)
  • email: ورود آدرس ایمیل با اعتبارسنجی خودکار
  • number: ورود اعداد
  • checkbox: انتخاب چند گزینه
  • radio: انتخاب یک گزینه از چند گزینه
  • file: آپلود فایل
  • submit: دکمه ارسال فرم

📌 اعتبارسنجی فرم‌ها

HTML5 ویژگی‌های داخلی برای اعتبارسنجی فرم‌ها ارائه می‌دهد:

html
<form>
<label>ایمیل:</label>
<input type="email" required pattern="[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,}$">
<label>رمز عبور (حداقل 8 کاراکتر):</label>
<input type="password" required minlength="8">
<button type="submit">ثبت نام</button>
</form>

ویژگی‌های اعتبارسنجی:

  • required: فیلد اجباری برای پر کردن
  • minlength/maxlength: حداقل/حداکثر طول متن
  • min/max: حداقل/حداکثر مقدار عددی
  • pattern: اعتبارسنجی با regex
  • type: اعتبارسنجی نوع داده (email, url, number, ...)

📌 عناصر پیشرفته فرم

برخی عناصر فرم برای موارد خاص طراحی شده‌اند:

۱. لیست‌های انتخاب (Dropdown)

html
<label for="country">کشور:</label>
<select id="country" name="country">
<option value="ir">ایران</option>
<option value="us">آمریکا</option>
<option value="uk">انگلیس</option>
</select>

۲. ناحیه متن چندخطی (Textarea)

html
<label for="message">پیام شما:</label>
<textarea id="message" name="message" rows="4" cols="50"></textarea>

۳. گروه‌بندی فیلدها (Fieldset)

html
<fieldset>
<legend>اطلاعات تماس</legend>
<label>نام:</label>
<input type="text" name="name">
<label>ایمیل:</label>
<input type="email" name="email">
</fieldset>

📌 طراحی فرم‌های کاربرپسند

رعایت این نکات تجربه کاربری بهتری ایجاد می‌کند:

۱. استفاده صحیح از برچسب‌ها (Labels)

html
<!-- روش صحیح -->
<label for="username">نام کاربری:</label>
<input type="text" id="username">
<!-- روش جایگزین -->
<label>
نام کاربری:
<input type="text" name="username">
</label>

۲. placeholder مناسب

html
<input
type="text"
placeholder="مثال: 09123456789"
title="شماره موبایل باید 11 رقمی و با 09 شروع شود"
>

۳. گروه‌بندی منطقی فیلدها

  • استفاده از fieldset و legend برای گروه‌بندی منطقی فیلدها
html
<fieldset>
<legend>جزئیات حساب کاربری</legend>
<label>نام:</label>
<input type="text" name="name">
<label>ایمیل:</label>
<input type="email" name="email">
</fieldset>

۴. دکمه‌های واضح و قابل استفاده

دکمه‌های ارسال باید به وضوح نشان دهند که کاربر قرار است چه کاری را انجام دهد.

html
<button type="submit">ارسال</button>

با رعایت موارد فوق، می‌توانید فرم‌هایی کاربردی و کاربرپسند طراحی کنید که تجربه کاربری بهتری را فراهم آورند. ساختار مناسب، فیلدهای درست، و اعتبارسنجی صحیح می‌توانند به افزایش کیفیت و کارایی فرم‌ها کمک کنند.

📌 قدم بعدی

در درس بعدی با لینک‌ها و نحوه پیوند صفحات در HTML آشنا خواهیم شد!