خصوصیات فرم HTML

این فصل HTML را معرفی می‌کند <form> ویژگی‌های مختلف عنصر.

ویژگی Action

action ویژگی‌ها تعریف می‌کنند که چه عملی هنگام ارسال فرم باید انجام شود.

معمولاً، زمانی که کاربر دکمه "ارسال" را کلیک می‌کند، داده‌های فرم به فایل روی سرور ارسال می‌شود.

در مثال زیر، داده‌های فرم به فایل به نام "action_page.php" ارسال می‌شود. این فایل شامل اسکریپت سرور برای پردازش داده‌های فرم است:

مثال

پس از ارسال، داده‌های فرم به "action_page.php" ارسال می‌شود:

<form action="/action_page.php">
  <label for="fname">نام:</label><br>
  <input type="text" id="fname" name="fname" value="Bill"><br>
  <label for="lname">نام خانوادگی:</label><br>
  <input type="text" id="lname" name="lname" value="Gates"><br><br>
  <input type="submit" value="Submit">
</form>

آزمایش کنید

تذکر:اگر ویژگی action را حذف کنید، action را به صفحه فعلی تنظیم می‌کند.

ویژگی Target

target ویژگی مشخص می‌کند که پاسخ فرم پس از ارسال در کجا نمایش داده شود.

target ویژگی می‌تواند یکی از مقادیر زیر را تنظیم کند:

مقدار توضیح
_blank پاسخ در پنجره جدید یا تب نمایش داده می‌شود.
_self پاسخ در پنجره فعلی نمایش داده می‌شود.
_parent پاسخ در فریم پدر نمایش داده می‌شود.
_top پاسخ در کل بدنه پنجره نمایش داده می‌شود.
framename پاسخ در iframe نام‌گذاری شده نمایش داده می‌شود.

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

مثال

در اینجا، نتایج ارسالی در یک برگه جدید مرورگر باز می‌شود:

<form action="/action_page.php" target="_blank">

آزمایش کنید

ویژگی Method

ویژگی method مشخص می‌کند که از چه روش HTTP برای ارسال داده‌های فرم استفاده شود.

داده‌های فرم می‌توانند به عنوان متغیرهای URL (استفاده از method="get") یا به عنوان تراکنش HTTP POST (استفاده از method="post") ارسال شود.

در ارسال داده‌های فرم، روش HTTP پیش‌فرض GET است.

مثال

در این مثال از روش GET برای ارسال داده‌های فرم استفاده شده است:

<form action="/action_page.php" method="get">

آزمایش کنید

مثال

در این مثال از روش POST برای ارسال داده‌های فرم استفاده شده است:

<form action="/action_page.php" method="post">

آزمایش کنید

توجه داشته باشید در مورد GET:

  • داده‌های فرم را به صورت نام/مقدار به URL اضافه کنید
  • هرگز از GET برای ارسال داده‌های حساس استفاده نکنید!(داده‌های ارسالی فرم در URL قابل مشاهده هستند!)
  • طول URL محدود است (۲۰۴۸ کاراکتر)
  • برای فرم‌هایی که کاربر می‌خواهد نتایج را به عنوان بوکمارک اضافه کند، بسیار مفید است
  • GET برای داده‌های غیرامنیتی استفاده می‌شود، مانند جستجوهای Google

توجه داشته باشید در مورد POST:

  • داده‌های فرم را به متن درخواست HTTP اضافه کنید (داده‌های ارسالی فرم در URL نمایش داده نمی‌شوند)
  • POST دارای محدودیت سایز نیست و می‌تواند برای ارسال داده‌های بزرگ استفاده شود.
  • فرم‌های ارسالی با POST نمی‌توانند نقشه‌های بوکمارک اضافه شوند

تذکر:اگر داده‌های فرم شامل اطلاعات حساس یا شخصی است، لطفاً حتماً از POST استفاده کنید!

ویژگی خودکار‌پر کردن

autocomplete ویژگی‌ها تعیین می‌کنند که فرم باید عملکرد خودکار‌پر کردن را باز کند یا خیر.

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

مثال

فعال‌سازی فرم‌های خودکار‌پر کردن:

<form action="/action_page.php" autocomplete="on">

آزمایش کنید

ویژگی Novalidate

novalidate ویژگی یک ویژگی بولین است.

اگر تنظیم شده باشد، تعیین می‌کند که داده‌های فرم در هنگام ارسال نباید بررسی شوند.

مثال

فرم بدون تنظیم ویژگی novalidate:

<form action="/action_page.php" novalidate>

آزمایش کنید

لیست تمام ویژگی‌های <form>

ویژگی توضیح
accept-charset تعیین کدگذاری کاراکتر برای ارسال فرم.
action تعیین می‌کند که داده‌های فرم در هنگام ارسال به کجا ارسال شوند.
autocomplete تعیین می‌کند که آیا باید از قابلیت خودکامپلتیشن (پر کردن) فرم استفاده شود یا خیر.
enctype تعیین می‌کند که چگونه داده‌های فرم باید کدگذاری شوند (تنها برای method="post").
method تعیین روش HTTP که باید از آن برای ارسال داده‌های فرم استفاده شود.
name تعیین نام فرم.
novalidate تعیین می‌کند که فرم در هنگام ارسال نباید بررسی شود.
rel تعیین می‌کند که ارتباط منبع لینک و مستند فعلی چیست.
target تعیین می‌کند که پس از ارسال فرم، پاسخ دریافتی کجا نمایش داده شود.