خصوصیت های فرم ها در HTML

Ratings
(0)

در این بخش، به توضیح خصوصیت های(attributes) مختلف که در عنصر <form> مورد استفاده قرار می گیرند، می پردازیم.


با استفاده از خصوصیت action، می توانیم آدرسی که اطلاعات فرم باید به آن ارسال(submit) شوند را تعریف کنیم. معمولاً، داده های فرم، وقتی که کاربر بر روی دکمه ی ارسال(submit) کلیک می کند، به یک فایل در سرور ارسال می شوند. در مثال زیر، داده ها به یک فایل به نام action_page.php ارسال می شوند. این فایل، حاوی یک اسکریپت در سمت سرور(server-side) است که آن داده ها را مورد استفاده قرار می دهد.

مثال شماره 1

با کلیک روی دکمه ی ارسال(submit)، اطلاعات به فایل action_page.php ارسال می شود:

<form action="/action_page.php">
  <label for="fname">نام:</label><br>
  <input type="text" id="fname" name="fname" value="احسان"><br>
  <label for="lname">نام خانوادگی:</label><br>
  <input type="text" id="lname" name="lname" value="عباسی"><br><br>
  <input type="submit" value="ارسال">
</form> 
امتحان کنید

 نکته: اگر خصوصیت action از قلم انداخته شود، صفحه ی جاری، بعنوان مقدار این خصوصیت تنظیم می شود.


 خصوصیت target در فرم های HTML

خصوصیت target مشخص می کند که پاسخی که پس از ارسال(submit) داده های فرم دریافت شده است را در کجا نمایش دهد. خصوصیت target می تواند یکی از مقادیر زیر باشد:

مقدار توضیحات
_blank  پاسخ در یک پنجره یا تب جدید نمایش داده می شود.
_self  پاسخ در یک صفحه ی جدید نمایش داده می شود.
_parent  پاسخ در فریم والد(parent frame) نمایش داده می شود.
_top  پاسخ در پنجره به صورت فول بادی(full body) نمایش داده می شود.
framename  پاسخ در یک فریم نام گذاری شده نمایش داده می شود.

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


مثال شماره 2

در این مثال، نتیجه ی ارسال شده(submit) در یک تب جدید در مرورگر نمایش داده می شود:

<form action="/action_page.php" target="_blank"> 
امتحان کنید

 


خصوصیت method در فرم ها

خصوصیت method، یک متد یا روش HTTP را برای ارسال(submit) داده های فرم مشخص می کند. داده های فرم می توانند به صورت متغیرهای URL یعنی متد get(با استفاده از method="get") ارسال شوند؛ یا می توانند به صورت متد post (با استفاده از method="post") ارسال شوند. متد پیش فرضِ HTTP به هنگام ارسال داده ها، متد get است.


مثال شماره 3

این مثال از متد GET به هنگام ارسال داده های فرم استفاده می کند:

<form action="/action_page.php" method="get"> 
امتحان کنید

مثال شماره 4

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

<form action="/action_page.php" method="post"> 
امتحان کنید

 


نکاتی در مورد متد GET:

1. متد GET داده های فرم را به صورت جفت های نام/مقدار(name/value) در URL اضافه می کند.

2. هرگز از متد GET برای ارسال داده های حساس استفاده نکنید(زیرا داده های ارسال شده، در URL قابل مشاهده است).

3. طول یک URL محدود است(2048 کاراکتر).

4. استفاده از آن در ارسال هایی که یک کاربر می خواهد نتیجه را بوک مارک(bookmark) کند مفید است.

5. متد GET برای داده هایی که امنیتی نیستند، مانند کوئری های رشته ای در گوگل خوب هست.


نکاتی در مورد متد POST:

1. داده های فرم را درون بدنه ی(body) درخواست HTTP اضافه می کند(داده های فرم ارسال شده در URL نشان داده نمی شوند).

2. متد POST محدودیت اندازه ندارد و می توانیم از آن برای ارسال داده ها با حجم زیاد استفاده کنیم.

3. ارسال ها با متد POST را نمی توانیم بوک مارک(bookmark) کنیم.


نکته: اگر داده های فرم حاوی اطلاعات حساس یا اطلاعات خصوصی است، همواره از متد POST استفاده کنید.


خصوصیت Autocomplete

خصوصیت autocomplete مشخص می کند که آیا ویژگی تکمیل اتوماتیک(autocomplete) باید برای یک فرم روشن(on) باشد یا خاموش(off). وقتی که خصوصیت autocomplete روشن(on) باشد، مرورگر به طور اتوماتیک، مقادیر را بسته به مقادیری که کاربر از قبل وارد می کند، تکمیل می کند.

مثال شماره 5

یک فرم که خصوصیت autocomplete آن on باشد:

<form action="/action_page.php" autocomplete="on"> 
امتحان کنید

خصوصیت Novalidate در فرم های HTML

خصوصیت novalidate به صورت بولین(boolean) هست. وقتی که این خصوصیت موجود باشد، مشخص می کند داده های فرم(ورودی یا input) نباید به هنگام ارسال(submit) اعتبارسنجی(validated) شوند.

مثال شماره 6

یک فرم با خصوصیت novalidate:

<form action="/action_page.php" novalidate> 
امتحان کنید

لیست تمام خصوصیت های <form>

خصوصیت(Attribute) توضیحات
accept-charset

 رمزگذاری(encoding) کاراکترها که برای ارسال فرم به کار می روند را مشخص می کند. 

action

مشخص می کند که داده های فرم(form-data) وقتی که روی دکمه ی ارسال(submit) کلیک می شود، به کجا می روند.

autocomplete

مشخص می کند که خاصیت تکمیل اتوماتیک(autocomplete) آیا باید روشن(on) باشد یا خاموش(off).

enctype

 مشخص می کند که داده های فرم، وقتی که به سرور ارسال() می شوند، چگونه باید رمزگذاری(encod) شوند. این ویژگی تنها برای متد post قابل استفاده است. 

method

 روش یا متد(HTTP method) به کار رفته به هنگام ارسال داده های فرم را مشخص می کند.

name

 نام فرم را مشخص می کند.

novalidate

 مشخص می کند که هنگام ارسال، فرم نباید اعتبارسنجی شود.

rel

 ارتباط بین یک منبع لینک شده و سند جاری را مشخص می کند.

target

 مشخص می کند که پاسخی که پس از ارسال داده های فرم دریافت شده است، در کجا نمایش داده شود.

 

  • بازدید: 241

نوشتن دیدگاه

لطفا نظرات خود را بیان کنید. به سوالات در سریع ترین زمان پاسخ داده خواهد شد.اما به نکات زیر توجه کنید:
1. سعی کنید نظرات شما مرتبط با مقاله ی مورد نظر باشد، در غیر این صورت پاسخ داده نخواهد شد.
2. سوالات خود را به صورت کوتاه بیان کنید و از پرسیدن چند سوال به طور همزمان خودداری کنید.
3. سوال خود را به طور واضح بیان کنید و از کلمات مبهم استفاده نکنید.

ارسال