मैं प्रशिक्षण लकड़हारा पर काम कर रहा हूं पिछले छह महीनों के लिए एक साइड-प्रोजेक्ट के रूप में ऐप। जैसा कि आप उम्मीद करते हैं, ऐसे ऐप के लिए संख्यात्मक इनपुट की आवश्यकता होती है।
जब आप किसी भी कोड संपादक में स्वत:पूर्ण का उपयोग करते हैं, तो इनपुट तत्व के लिए डिफ़ॉल्ट प्रकार टेक्स्ट होता है:
<input type="text" />
संख्या के प्रकार वाला एक HTML इनपुट तत्व केवल संख्यात्मक इनपुट स्वीकार करता है। इस संख्यात्मक इनपुट फ़ील्ड के अंदर अक्षर टाइप करने का प्रयास करें:
आप नहीं कर सकते।
पाठ . के प्रकार वाले HTML इनपुट तत्व , हालांकि, पाठ और संख्या दोनों को स्वीकार करता है। इस टेक्स्ट इनपुट फ़ील्ड के अंदर संख्या और अक्षर दोनों टाइप करने का प्रयास करें:
हाँ, यह काम करता है!
जब मैंने शुरुआत में अपने ऐप में प्रतिनिधि और वजन के लिए इनपुट घोषित किया, तो मैंने डिफ़ॉल्ट इनपुट प्रकार को टेक्स्ट से नंबर में नहीं बदला। मैंने इसके बारे में सोचा ही नहीं। डेस्कटॉप कंप्यूटर पर परीक्षण करते समय, नंबर लिखना आसान होता है, इसलिए इसने मुझे परेशान नहीं किया।
लेकिन जैसे ही मैंने अपने iPhone 6 पर अपने ऐप का परीक्षण किया, यह स्पष्ट हो गया कि आप शुरुआत से ही सही इनपुट प्रकार का उपयोग क्यों कर सकते हैं।
यदि आपके इनपुट तत्व का प्रकार टेक्स्ट पर सेट है, और आप उस इनपुट फ़ील्ड पर क्लिक करते हैं, कम से कम आईफ़ोन, (मुझे संदेह है कि यह एंड्रॉइड पर समान है) तो आपका मूल कीबोर्ड पॉप अप होगा। मानो आप किसी को टेक्स्ट संदेश लिख रहे हों।
इस तरह:
अब, यह नेटिव कीबोर्ड आपको नंबरों तक पहुंच प्रदान करता है, लेकिन पहले, आपको 123 बटन पर क्लिक करना होगा। यह एक अनावश्यक कदम जोड़ता है।
एक इनपुट फ़ील्ड के लिए जहां एकमात्र उद्देश्य प्रतिनिधि की संख्या और भार उठाना है, यह केवल स्मार्टफ़ोन पर संख्यात्मक कीबोर्ड को पॉप अप करने के लिए समझ में आता है।
ऐसा करने के लिए, आप बस यह निर्दिष्ट करते हैं कि आप चाहते हैं कि आपका इनपुट तत्व संख्यात्मक इनपुट स्वीकार करे:
इस तरह:
<input type="number" />
और परिणाम (iOS उपकरणों पर):
और इसमें बस इतना ही है!