جواد مهدی‌نیا 1324 0 کامنت 1400/12/28

آموزش فرم در html؛ انواع Input (بخش 5؛ پایانی)

در بخش پایانی از آموزش فرم‌های html، انواع Input ها در این فرم‌ها بررسی می‌شوند و چندین مثال هم برای درک بیشتر این بخش ذکر خواهد شد.

انواع Input در html

تاکنون در وبسایت نیوسان‌وب در  4 بخش در خصوص فرم‌ها، نحوه استفاده از آنها و توضیحات مرتبط، آموزش‌های لازم ارائه شده است؛ هرچند تا اینجا با انواع Input هم در مثال‌ها کار کردیم و برخی از آنها را ذکر کردیم، اما در بخش پایانی آموزش‌های مربوط به فرم در html می‌خواهیم به صورت اختصاصی به این المان‌ها یا عناصر html بپردازیم و با ارائه مثال اختصاصی برای هر یک، آموزش‌های مرتبط به فرم را نیز خاتمه دهیم.

انواع Input در فرم‌های html

انواع مختلفی از Input در html یا فرم‌های آنها وجود دارد که لیست آنها را ادامه خواهید دید. Input که معمولا به عنوان یک کنترل برای گرفتن ورودی از کاربر و ارسال آن اطلاعات جهت پردازش استفاده می‌شوند، به شکل‌های مختلفی وجود دارند. چیزی که سبب می‌شود تا هر Input به شکل خاصی در آید یا عملیات خاصی انجام دهد و یا اینکه محدودیتی در نوع ورودی توسط کاربر ایجاد کند، صفت  type آن است. در ادامه این بخش مهم‌ترین انواع Input ها در فرم‌های html را می‌توانید ببینید. دقت کنید که ما در مثال‌های ارائه شده، ما از یک fieldset و legend برای تفکیک و مشخص شدن هر Input از دیگری استفاده کرده‌ایم که شما می‌توانید آن را بدون اینها نیز استفاده کنید.

1- Input نوع text

این نوع Input  با صفت type برابر Text مشخص می‌شود. البته در نظر داشته باشید که اگر مقداری به صفت type آن ندهید هم به صورت پیش‌فرض، آن را Text در نظر می‌گیرد. همانطور که مشخص است از این المان برای گرفتن ورودی متنی استفاده می‌شود که در مثال زیر می‌توانید آن را ببینید.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=n">
    <title>Newsunweb.com</title>
</head>
<body>
    <div>
     <form>
        <fieldset>
            <legend>Input, Type Text</legend>
            <label for="firstname">First Name:</label><br>
            <input type="text" id="firstname" name="FirstName"/><br>

            <label for="lastname">Last Name:</label><br>
            <input id="lastname" name="LastName"/><br>
        </fieldset>
      </form>
    </div>
</body>
</html>

توجه: همانطور که قبلا گفتیم، صفت for از label باید به همان صفت id از المان Input اشاره کند تا آنها را به هم مرتبط کند. برای بررسی این مساله می‌توانید روی هر label کلیک کنید و نتیجه را در مرورگر ببینید که در نتیجه این عمل، Input مرتبط با آن هایلایت شده و برای گرفتن ورودی از کاربر آماده می‌شود. نکته دیگر اینکه ما در input با id برابر lastname، نوع آن را مشخص نکردیم که همانطور که گفتیم، مرورگر به صورت پیش‌فرض، type را در صورتی که نوشته نشود برابر با text در نظر می‌گیرد.

2- Input نوع password

در Input نوع Password که معمولا برای اختصاص گذرواژه استفاده می‌شود، هر چه تایپ کنید، به شکل دایره‌های توپر نشان داده می‌شود تا قابل مشاهده توسط اطرافیان احتمالی و ایجاد مشکلات امنیتی نشود.

<body>
    <div>
      <form>
        <fieldset>
            <legend>Input, Type Password</legend>
            <label for="username">UserName:</label><br>
            <input id="username" name="UserName"/><br>

            <label for="password">Password:</label><br>
            <input type="password" id="password" name="Password"/><br>
        </fieldset>
     </form>
    </div>
</body>

3- Input نوع submit

از Input نوع submit، که به شکل یک دکمه قابل کلیک ظاهر می‌شود، برای ارسال اطلاعات موجود در فرم به handler فرم استفاده می‌شود تا سپس پردازش‌های لازم در این handler روی آنها انجام شود. همانطور که قبلا گفتیم، handler در صفت action از فرم آدرس‌دهی می‌شود.

 <input type="submit" value="Click Me"/>

این المان به شکل بالا البته در داخل یک فرم html درج می‌شود که ما در اینجا نشان ندادیم آن را. توجه کنید که اگر مقدار value را برای این المان ننویسید، مرورگر مقدار پیش‌فرض submit را به کاربر نشان خواهد داد.

مثال زیر را ببینید که ترکیب 3 نوع Input بالا را در نشان داده است. مقادیر را با کلیک بر دکمه submit به صفحه test.html بفرستید.

Input, Type Text


Input, Type Password



 

4- Input نوع reset

از این Input که type آن برابر یا reset است برای بازنشانی سایر Inputها به مقادیر اولیه شان استفاده می شود.

 <input type="reset" value="Click to Reset"/>

 توجه کنید که در این المان نیز اگر مقدار value را مشخص نکنید، آن را به صورت پیش‌فرض برابر با Reset قرار می‌دهد.

5- Input با دکمه رادیویی

Input با دکمه رادیویی، برای انتخاب یک گزینه از میان چند گزینه استفاده می‌شود. در این المان صفت type برابر با radio قرار می‌گیرد و به شکل زیر استفاده می‌شود:

<body>
    <div>
        <form action="test.html">
            <fieldset>
                <legend>Input, Type Radio</legend>
                <span>Selecet your preferred age:</span><br>
                <input id="val1" type="radio" name="preferrence" value="15-20">
                <label for="val1">15-20</label><br>
                <input id="val2" type="radio" name="preferrence" value="20-30"/>
                <label for="val2">20-30</label><br>
                <input id="val3" type="radio" name="preferrence" value="30-40"/>
                <label for="val3">30-40</label><br>
                <input id="val4" type="radio" name="preferrence" value="40-50"/>
                <label for="val4">40-50</label><br>
            </fieldset>
            <br>
            <input type="submit"/>
        </form>
    </div>
</body>

که خروجی آن به شکل زیر است:

Input, Type Radio Selecet your preferred age:




 

توجه کنید که در مثال بالا ما مقداری برای value ی input آخر قرار ندادیم و هر مرورگر به صورت پیش‌فرض مقداری را به آن اختصاص می‌دهد.

در این مثال بد نیست که روی خود محدوده‌های سنی ارائه شده (نه دکمه‌های رادیویی) هم کلیک کنید؛ در این صورت می‌بینید که دکمه رادیویی معادل آن انتخاب می‌شود. به نظر شما دلیل این مساله چیست؟

6- Input از نوع چک باکس یا checkbox

Input از نوع چک باکس یا checkbox یکی دیگر از انواع المان‌های Input است که قابلیت انتخاب 1 یا چند گزینه را برای کاربران فراهم می‌کند.

<body>
    <div>
        <form action="test.html">
            <fieldset>
                <legend>Input, Type Checkbox</legend>
                <span>Select:</span><br>
                <input id="tall" type="checkbox" name="height" value="Tall">
                <label for="tall">I am tall</label><br>
                <input id="rich" type="checkbox" name="financial" value="Rich">
                <label for="rich">I am tall</label><br>
                <input id="browneye" type="checkbox" name="eyecolor" value="BrownEye">
                <label for="browneye">I have brown eye</label><br>
                <input id="student" type="checkbox" name="training" value="Student">
                <label for="student">I am a student</label><br>
            </fieldset>
            <br>
            <input type="submit"/>
        </form>
    </div>
</body>

خروجی کدهای بالا به شکل زیر است:

Input, Type Checkbox Select:




 

7- Input از نوع color

Input با نوع color جهت انتخاب رنگ استفاده می‌شود؛ با بکارگیری این نوع Input، کادری باز می‌شود که از طریق آن می‌توانید رنگ دلخواهتان را انتخاب کنید.

<body>
    <div>
        <form action="test.html">
            <fieldset>
                <legend>Input, Type Color</legend>
                <span>Select a color:</span><br>
                <input type="color" name="selectedcolor"/>
            </fieldset>
            <br>
            <input type="submit"/>
        </form>
    </div>
</body>
Input, Type Color Select a color:

 

8- Input با نوع date

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

<body>
    <div>
        <form action="test.html">
            <fieldset>
                <legend>Input, Type Date</legend>
                <span>Your birthday:</span><br>
                <input type="date" name="birthday"/>
            </fieldset>
            <br>
            <input type="submit"/>
        </form>
    </div>
</body>
Input, Type Date Your birthday:

 

 9- Input نوع datetime-local

در المان نوع datetime-local، علاوه بر تاریخ که در مورد هشتم با آن آشنا شدید، زمان نیز قابل وارد کردن است و در مرورگرهایی که پشتیبانی می‌شود، یک کادر ظاهر می‌شود تا با انتخاب تاریح و زمان، مقدار آن تخصیص یابد.

<body>
    <div>
        <form action="test.html">
            <fieldset>
                <legend>Input, Type datetime-local</legend>
                <label for="dtime">Your interview is on:<br>
                <input type="datetime-local" name="datetime" id="dtime"/>
            </fieldset>
            <br>
            <input type="submit"/>
        </form>
    </div>
</body>
Input, Type datetime-local

 

10- Input  نوع Email

ورودی المان Input از نوع email، به صورت ایمیل است که مقدار ورودی آن باید به شکل یک ایمیل باشد؛ در صورتی که مقدار وارد شده، ساختار یک ایمیل را نداشته باشد، submit انجام نشده و یک هشدار این مساله را به اطلاع کاربر می‌رساند.

<body>
    <div>
        <form action="test.html">
            <fieldset>
                <legend>Input, Type Email</legend>
                <label for="emailaddress">Your Email:<br>
                <input type="email" name="email" id="emailaddress"/>
            </fieldset>
            <br>
            <input type="submit"/>
        </form>
    </div>
</body>
Input, Type Email

 

11- Input نوع File

این نوع Input که از نوع File است، برای انتخاب یک یا چند فایل استفاده می‌شود.

<body>
    <div>
        <form action="test.html">
            <fieldset>
                <legend>Input, Type File</legend>
                <label for="filechoose">Choose File(s):<br>
                <input type="file" name="file" id="filechoose" multiple/>
            </fieldset>
            <br>
            <input type="submit"/>
        </form>
    </div>
</body>
Input, Type File

 

توجه: در مثال بالا از صفت multiple استفاده کردیم تا کاربر بتواند همزمان چند فایل را انتخاب کند؛ در صورتی که از این صفت استفاده نشود، تنها یک فایل قابل انتخاب است.

نکته: اگر بخواهید انتخاب فایل توسط کاربر را تنها به نوع خاصی محدود کنید، باید از صفت accept استفاده کنید. برای اینکه بدانید چطور از این صفت می‌توانید استفاده کنید، نحوه بکارگیری آن در قالب مثال زیر مشخص شده است.

<body>
    <div>
        <form action="test.html">
            <fieldset>
                <legend>Input, Type File</legend>
                <label for="filechoose">Choose Office File(s) (Word & Excel):<br>
                <input type="file" name="file" id="filechoose" multiple accept=".docx, .xlsx"/>
                <br><br><br>
                <label for="image">Choose an Image:<br>
                <input type="file" name="image" id="image" accept="image/png"/>
                <br><br><br>
                <label for="images">Choose Image(s):<br>
                <input type="file" name="images" id="imagechoose" multiple accept="image/*"/>
            </fieldset>
            <br>
            <input type="submit"/>
        </form>
    </div>
</body>
Input, Type File


 

12- Input نوع hidden

وقتی که type یک Input برابر با مقدار hidden باشد، این المان به کاربر نشان داده نمی‌شود تا مقدار آن بدون تغییر از طریق فرم submit شود. البته در کار با این المان دقت کنید که گرچه به کاربر نشان داده نمی‌شود، اما مقدار آن با استفاده از روشهایی در صورتی که کاربر بخواهد، قابل تغییر یا مشاهده است و به همین دلیل نباید داده‌های حساسی که به ویژه در ارتباط با امنیت وبسایتتان است را در آن قرار دهید.

13- Input نوع month

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

مثال زیر استفاده از دو نوع ورودی اخیر را در قالب کدهای html نشان می‌دهد:

<body>
    <div>
        <form action="test.html">
            <fieldset>
                <legend>Input, Type Hidden</legend>
                <lable for="fname">First Name:</lable>
                <input type="text" id="fname" name="firstname" value="Ali"/><br>
                <input type="hidden" name="custometId" value="5"/>
            </fieldset>
            <fieldset>
                <legend>Input, Type Month</legend>
                <lable for="ymonth">Select Year and Month:</lable>
                <input type="month" id="ymonth" name="date" /><br>
            </fieldset>
            <br>
            <input type="submit"/>
        </form>
    </div>
</body>
Input, Type Hidden First Name:
Input, Type Month Select Year and Month:

 

14-Input از نوع number

Input از نوع number برای گرفتن ورودی عددی صحیح (مثبت یا منفی) از کاربر استفاده می‌شود و مقادیر غیر عددی را دریافت نمی‌کند. با استفاده از صفات step، max، min و … می‌توان محدودیت‌های لازم را بر این المان جهت محدود کردن یا سفارشی کردن مقادیر دریافتی اعمال کرد. برای مثال با استفاده از این صفات در مثال زیر توانسته ایم، محدودیتی را برای دریافت اعداد مضرب 3 و دو رقمی اعمال کنیم:

<body>
    <div>
        <form action="test.html">
            <fieldset>
                <legend>Input, Type Number</legend>
                <lable for="numb">Enter a (multiplied by 3) two digit number:</lable>
                <input type="number" id="numb" name="enterednumber" min="12" max="99" step="3"/><br>
            </fieldset>
            <br>
            <input type="submit"/>
        </form>
    </div>
</body>
Input, Type Number Enter a (multiplied by 3) two digit number:

 

 14-Input نوع range

از Input با نوع range برای انتخاب یک عدد از میان یک رنج از اعداد که با استفاده از تغییر مکان یک دکمه لغزنده متحرک روی آن ایجاد می‌شود، استفاده می‌گردد. برای این ورودی نیز همانند نوع number، محدودیت‌هایی مانند min، max، step و … قابل اعمال است. توجه کنید که در حالت پیش‌فرض، اعدادی که می‌توانند به این نوع Input تخصیص پیدا کنند، اعداد صحیح از 0 تا 100 هستند.

<body>
    <div>
        <form action="test.html">
            <fieldset>
                <legend>Input, Type Range</legend>
                <lable for="numb">Select a number:</lable>
                <input type="range" name="number"><br>
            </fieldset>
            <br>
            <input type="submit"/>
        </form>
    </div>
</body>
Input, Type Range Select a number:

 

15- Input نوع search

Input نوع search در فرم‌ها برای جستجو به کار می‌رود و رفتاری مشابه نوع text دارد.

16- Input با نوع time

از Input با نوع time جهت گرفتن ورودی زمان استفاده می‌شود و در مرورگرهایی که پشتیبانی می‌کنند، با کلیک روی علامت زمان این ورودی، کادری ظاهر می‌شود که با استفاده از آن می‌توان زمان مورد نظر را انتخاب کرد.

17- Input نوع url

از Input نوع url جهت گرفتن ورودی به شکل یک آدرس اینترنتی از کاربر استفاده می‌شود.

18- Input نوع week

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

کاربرد موارد 15 تا 18 ذکر شده در توضیحات بالا و همچنین نوع reset که در مورد چهارم از موارد چندگانه مربوط به بحث Input ها در همین عناوین بالا شرح داده شد را می‌توانید در قالب مثال زیر مشاهده کنید:

<body>
    <div>
        <form action="test.html">
            <fieldset>
                <legend>Input, Type: Search </legend>
                <label for="searchword">Eter a Keyword:</lable><br>
                <input type="search" id="searchword" name="searched"/>
            </fieldset><br>

            <fieldset>
                <legend>Input, Type: Time </legend>
                <label for="sptime">Sport Time</label><br>
                <input type="time" id="sptime" name="sporttime"/>
            </fieldset><br>

            <fieldset>
                <legend>Input, Type: URL</legend>
                <label for="webadd">The Website Address:</label><br>
                <input type="url" id="webadd" name="website" value="https://www.newsunweb.com" size="30"/>
            </fieldset><br>

            <fieldset>
                <legend>Input, Type: Week</legend>
                <label for="testweek">Select a Week:</label><br>
                <input type="week" id="testweek" name="week"/>
            </fieldset><br> 

             <input type="submit" value="Submit"/>
             <input type="reset" value="Reset"/>
        </form>
    </div>
</body>
Input, Type: Search
 
Input, Type: Time
 
Input, Type: URL
 
Input, Type: Week

 

جمع‌بندی پایانی

اگر در پایان بخواهیم یک جمع‌بندی کلی از این مقاله آموزشی نیوسان‌وب که در قسمت پایانی بحث فرم‌ها در صفحات html ارائه گردید، انجام دهیم باید گفت که ورودی‌های یک فرم، جزوه مهم‌ترین عناصر یا المان‌های فرم html هستند که اطلاعات موردنیاز را از کاربر دریافت می‌کنند. تگ input با استفاده از صفت type به اشکال مختلف در آمده، یا در مواردی کاربر را محدود به وارد کردن فرمت خاصی از ورودی می‌کند که در توضیحات بالا هر یک با مثال‌‌های لازم توضیح داده شدند. همراهان عزیز نیوسان‌وب، در صورتی که نکته، پیشنهاد، انتقاد، نظر و یا سوالی در ذهن دارند، می‌توانند آن در بخش نظرات از پایین همین صفحه مطرح نمایند تا در فرصت مناسب پاسخ داده شود.

لینک این مقاله را در شبکه‌های اجتماعی به اشتراک بگذارید.

دیدگاه خود را ثبت کنید

دیدگـاه مخاطبــان
نظری ثبت نشده است، شما اولین نفر باشید!