← Back to HTML Course | Chapter 5: Forms | Lesson 4 of 7

HTML Input Types

कल्पना कीजिए कि आप किसी लोकल क्लीनिक में एक पेपर फॉर्म भर रहे हैं। अगर फॉर्म में 'Date of Birth' लेबल वाला बॉक्स है, तो आप उसमें एक तारीख लिखने की उम्मीद करते हैं। अगर यह आपका फोन नंबर माँगता है, तो आप नंबर लिखते हैं। अगर फॉर्म में सिर्फ खाली, बिना लेबल वाले बॉक्स हों और formatting की कोई गाइडलाइन न हो, तो यूज़र्स तरह-तरह के गड़बड़ इनपुट लिख देंगे। HTML input types वेब ब्राउज़र्स के लिए वही गाइड्स की भूमिका निभाते हैं। type attribute सेट करके, आप ब्राउज़र को बिल्कुल बताते हैं कि आप किस तरह का डेटा उम्मीद करते हैं, जैसे emails, passwords, dates, या colors। इससे ब्राउज़र्स को मोबाइल डिवाइसेज़ पर कस्टम कीबोर्ड्स दिखाने और सर्वर पर सबमिट होने से पहले user inputs को ऑटोमैटिकली validate करने में मदद मिलती है।
Syntax
markup
<input type="text" name="name">
<input type="password" name="name">
<input type="checkbox" name="name" value="value">
<input type="radio" name="name" value="value">
<input type="submit" value="Label">

Text Inputs

Text inputs मानक alphanumeric कैरेक्टर इकट्ठा करते हैं। अलग-अलग types चुनकर, आप गोपनीयता के लिए password फील्ड्स को छुपा सकते हैं, search configurations को कस्टमाइज़ कर सकते हैं, या mobile devices पर telephone layout pads को ऑप्टिमाइज़ कर सकते हैं।

Note:
  • mobile displays पर ऑप्टिमाइज़्ड software keyboards ट्रिगर करने के लिए search और tel जैसे specialized text types का उपयोग करें।
  • Accepted values:
  • text — single-line text
  • password — masked text
  • search — search field
  • tel — telephone number
  • hidden — not displayed but submitted
Warning: passwords जैसे sensitive inputs के लिए कभी भी standard text type इस्तेमाल न करें, क्योंकि टाइप किए गए characters स्क्रीन पर खुलेआम दिखेंगे।

उदाहरण: Text Inputs

markup
<input type="text" name="username">
<input type="password" name="password">

Email और URL

email और URL types बेसिक syntactic validation लागू करते हैं। ये ब्राउज़र को बताते हैं कि सबमिट करने से पहले दर्ज किया गया टेक्स्ट standard email या web link फॉर्मेट से मेल खाता है या नहीं, साथ ही '@' या '.com' जैसे mobile keyboard बटन को भी ऑप्टिमाइज़ करते हैं।

Note:
  • अगर आप यूज़र को addresses की लिस्ट सबमिट करने देना चाहते हैं, तो अपने email input में multiple attribute जोड़ें।
  • Accepted values:
  • email — validated email address; multiple allowed
  • url — validated absolute URL
  • Both support placeholder, required, pattern, minlength, maxlength
Warning: Native browser validation सिर्फ formatting pattern चेक करता है; अपने सर्वर पर inputs को हमेशा verify और sanitize करें।

उदाहरण: Email and URL

markup
<input type="email" name="email">
<input type="url" name="website">

Numeric Inputs

Numeric inputs यूज़र एंट्री को सिर्फ नंबरों तक सीमित रखते हैं। number type यूज़र को spin buttons क्लिक करके वैल्यू बढ़ाने या घटाने देता है, जबकि range type एक adjustable slider bar दिखाता है, जो लेआउट एडजस्टमेंट के लिए एकदम सही है।

Note:
  • अपने numeric selectors के लिए सटीक सीमाएं और incremental limits तय करने के लिए min, max, और step attributes का उपयोग करें।
  • Accepted values:
  • number — min | max | step (number | any)
  • range — slider; min | max | step; default 0-100
Warning: credit card numbers, zip codes, या phone numbers के लिए number type इस्तेमाल न करें, क्योंकि यह ज़रूरी leading zeros हटा सकता है।

उदाहरण: Numeric Inputs

markup
<input type="number" min="1" max="10">
<input type="range" min="0" max="100">

Date और Time

Date और time inputs ब्राउज़र को एक साफ-सुथरा, built-in calendar या clock picker दिखाने के लिए कहते हैं। इससे आपका इंटरफ़ेस consistent रहता है और mobile यूज़र के लिए तारीखें दर्ज करना आसान हो जाता है, जिससे भारी-भरकम third-party calendar plugins की ज़रूरत खत्म हो जाती है।

Note:
  • यूज़र को अमान्य पिछली या भविष्य की तारीखें चुनने से रोकने के लिए min और max attribute coordinates तय करें।
  • Accepted values:
  • date — YYYY-MM-DD
  • time — HH:MM
  • datetime-local — YYYY-MM-DDTHH:MM
  • month — YYYY-MM
  • week — YYYY-Www
  • min / max / step limit accepted dates
Warning: Legacy ब्राउज़र्स native date pickers सपोर्ट नहीं करते, और ऑटोमैटिकली एक standard text input पर fallback हो जाते हैं।

उदाहरण: Date and Time

markup
<input type="date">
<input type="time">

Selection

Selection inputs यूज़र को पहले से तय ऑप्शन में से चुनने देते हैं। Radio buttons का उपयोग तब किया जाता है जब यूज़र किसी ग्रुप की गई category से सिर्फ एक ऑप्शन चुन सकें, जबकि checkboxes यूज़र को एक साथ कई स्वतंत्र ऑप्शन चुनने की सुविधा देते हैं।

Note:
  • बड़े और आसानी से क्लिक होने वाले touch targets बनाने के लिए अपने selection inputs को label टैग्स के अंदर लपेटें।
  • Accepted values:
  • checkbox — zero or more; checked
  • radio — one per name group; checked
  • color — #rrggbb
  • file — accept | multiple | capture
Warning: अपने radio buttons को ग्रुप करने के लिए हमेशा उन्हें बिल्कुल एक जैसा name attribute दें, वरना यूज़र्स कई ऑप्शन सिलेक्ट कर पाएंगे।

उदाहरण: Selection

markup
<input type="radio" name="plan" value="basic"> Basic
<input type="checkbox" name="agree"> Agree

Action Buttons

Action inputs ऐसे क्लिक करने योग्य कंट्रोल बनाते हैं जो आपके फॉर्म्स के साथ इंटरैक्ट करते हैं। Submit बटन फॉर्म डेटा को पैकेज करके सर्वर पर भेजते हैं, reset बटन तुरंत सभी फील्ड्स क्लियर कर देते हैं, और image inputs ग्राफिकल submission बटन की तरह काम करते हैं।

Note:
  • पेज को दोबारा लोड किए बिना कस्टम JavaScript एक्शन ट्रिगर करने के लिए अपने फॉर्म्स के अंदर type="button" का उपयोग करें।
  • Accepted values:
  • submit — submits the form
  • reset — resets the form
  • button — no default action
  • image — graphical submit; needs src and alt
Warning: image input type बिल्कुल submit बटन की तरह काम करता है, लेकिन यह उस exact pixel coordinates को भी भेजता है जहाँ यूज़र ने क्लिक किया था।

उदाहरण: Action buttons

markup
<input type="submit" value="Submit">
<input type="reset" value="Reset">
<input type="image" src="submit.png" alt="Submit">

Special

Specialized inputs अनूठे कार्य संभालते हैं। color type एक native color picker खोलता है, file type डॉक्यूमेंट ट्रांसफर के लिए एक uploader बटन दिखाता है, और hidden type यूज़र को कुछ भी दिखाए बिना चुपचाप background variables पास करता है।

Note:
  • अनुमत फ़ाइल फॉर्मेट सीमित करने के लिए अपने file inputs पर हमेशा accept attribute तय करें।
  • Accepted values:
  • file — accept (e.g. image/*, .pdf) | multiple
  • hidden — value is submitted, not shown
  • color — #rrggbb
  • range — min | max | step
Warning: hidden inputs के अंदर sensitive user credentials या keys कभी न रखें, क्योंकि कोई भी developer tools इस्तेमाल करके HTML कोड को inspect कर सकता है।

उदाहरण: Special

markup
<input type="color">
<input type="file" accept="image/*">
<input type="hidden" name="token" value="abc123">
Live Example
Related Topics
{# common_mistakes/chapter_summary/browser_support: on Hindi pages the view already swaps in the hi_ translation fields (or blanks these out if untranslated), so this renders correctly for both languages without a lang_code check here. #}
🔒

Chapter Quiz — Complete all 7 topics to unlock

0/7 topics done

Complete these topics first:

Login to run this code

C/C++/Java/PHP execution requires a free account. Your code is saved — you'll land right back in the editor after logging in.