दिलचस्प पोस्ट
CentOS 6.2 पर PHP mbstring कैसे स्थापित करें I यूआरआई से पूर्ण फ़ाइल पथ कैसे प्राप्त करें पांडा के साथ कॉलम की वैरिएबल संख्या को संभालने – पायथन ओवरलैपिंग आयतों का क्षेत्र खोजने के लिए एक कुशल एल्गोरिथ्म क्या है I जावास्क्रिप्ट में क्या अच्छा टेम्पलेट भाषा समर्थित है? जावा के लिए सर्वश्रेष्ठ XML पार्सर मैटप्ललिब में लाइन रैपिंग के साथ टेक्स्ट बॉक्स? हास्केल में फिबोनैचि संख्याएं जेनरेट कर रही हैं? बिल्डर डिजाइन पैटर्न और फैक्टरी डिजाइन पैटर्न के बीच अंतर क्या है? एक प्रक्रिया की सीपीयू और मेमोरी उपयोग पाने के लिए सही प्रदर्शन काउंटर क्या है? SQL सर्वर: गलत संस्करण 661 संलग्न करें डी 3 में एक नक्शा केंद्र को एक भौगोलिक तत्व दिया जाता है कोड केवल 0.0, 0.0 जीपीएस समन्वय करेगा, जबकि NullPointerException फेंकता है पृष्ठभूमि थ्रेड में एक दृश्य को बढ़ाएं सभी आधुनिक ब्राउज़रों में पृष्ठ ज़ूम स्तर कैसे पता लगा सकता है?

मैं एक HTML5 "संख्या" तत्व में संभावित निविष्टियों को कैसे सीमित कर सकता हूं?

<input type="number"> maxlength <input type="number"> तत्व के लिए, maxlength काम नहीं कर रहा है। मैं उस संख्या तत्व के लिए maxlength को कैसे प्रतिबंधित कर सकता हूं?

Solutions Collecting From Web of "मैं एक HTML5 "संख्या" तत्व में संभावित निविष्टियों को कैसे सीमित कर सकता हूं?"

और आप एक max विशेषता जोड़ सकते हैं जो कि उच्चतम संभव संख्या निर्दिष्ट करेगा जो आप सम्मिलित कर सकते हैं

 <input type="number" max="999" /> 

यदि आप max और एक min मूल्य जोड़ते हैं तो आप अनुमति मानों की सीमा निर्दिष्ट कर सकते हैं:

 <input type="number" min="1" max="999" /> 

उपरोक्त अभी भी किसी उपयोगकर्ता को निर्दिष्ट सीमा के बाहर मान दर्ज करने से रोक नहीं सकता है इसके बजाए उसे एक पॉपअप प्रदर्शित किया जाएगा जिससे कि वह इस प्रोजेक्ट स्क्रीनशॉट में दिखाए गए फॉर्म को जमा करने के लिए इस श्रेणी के भीतर एक मान दर्ज करें।

यहां छवि विवरण दर्ज करें

आप min और max विशेषताओं को निर्दिष्ट कर सकते हैं, जो एक विशिष्ट श्रेणी के भीतर ही इनपुट की अनुमति देगा।

 <!-- equivalent to maxlength=4 --> <input type="number" min="-9999" max="9999"> 

यह केवल स्पिनर नियंत्रण बटन के लिए काम करता है, हालांकि यद्यपि उपयोगकर्ता max स्वीकृत max संख्या से अधिक संख्या टाइप करने में सक्षम हो सकता है, तो फ़ॉर्म सबमिट नहीं होगा।

अधिकतम से अधिक संख्या के लिए क्रोम का सत्यापन संदेश
Chrome 15 से लिया गया स्क्रीनशॉट

आप वर्णों की संख्या को सीमित करने के लिए जावास्क्रिप्ट में एचटीएमएल 5 oninput इवेंट का उपयोग कर सकते हैं:

 myInput.oninput = function () { if (this.value.length > 4) { this.value = this.value.slice(0,4); } } 

यदि आप एक मोबाइल वेब समाधान की तलाश कर रहे हैं जिसमें आप अपने उपयोगकर्ता को पूर्ण पाठ कुंजीपटल के बजाय एक नंबर पैड देखने की इच्छा रखते हैं। प्रकार = "टेल" का उपयोग करें यह अधिकतमलेम्प्शन के साथ काम करेगा जो आपको अतिरिक्त जावास्क्रिप्ट बनाने से बचाता है।

मैक्स और मिन अभी भी उपयोगकर्ता को अधिकतम और न्यूनतम से अधिक संख्या में टाइप करने की अनुमति देगा, जो इष्टतम नहीं है

आप इन सभी को इस तरह से जोड़ सकते हैं:

 <input name="myinput_drs" oninput="maxLengthCheck(this)" type = "number" maxlength = "3" min = "1" max = "999" /> <script> // This is an old version, for a more recent version look at // https://jsfiddle.net/DRSDavidSoft/zb4ft1qq/2/ function maxLengthCheck(object) { if (object.value.length > object.maxLength) object.value = object.value.slice(0, object.maxLength) } </script> 

अद्यतन करें:
आप किसी भी गैर-संख्यात्मक वर्ण को दर्ज करने के लिए भी रोक सकते हैं, क्योंकि object.length संख्या इनपुट के लिए एक खाली स्ट्रिंग होगी, और इसलिए इसकी लंबाई 0 होगी। इस प्रकार maxLengthCheck फ़ंक्शन कार्य नहीं करेगा।

उपाय:
उदाहरण के लिए या इसे देखें।

डेमो – यहाँ कोड का पूरा संस्करण देखें:
http://jsfiddle.net/DRSDavidSoft/zb4ft1qq/1/

अद्यतन 2: यहां अपडेट कोड है: https://jsfiddle.net/DRSDavidSoft/zb4ft1qq/2/

अद्यतन 3: कृपया ध्यान दें कि दशमलव मान से अधिक की अनुमति देने से अंक मान के साथ गड़बड़ हो सकता है।

यह बहुत आसान है, कुछ जावास्क्रिप्ट के साथ आप maxlength अनुकरण कर सकते हैं, इसे देखें:

 //maxlength="2" <input type="number" onKeyDown="if(this.value.length==2) return false;" /> 

या यदि आपका अधिकतम मान उदाहरण 99 और न्यूनतम 0 के लिए है, तो आप इसे इनपुट तत्व में जोड़ सकते हैं (आपका मान आपके अधिकतम मूल्य आदि से पुनः लिखा जाएगा)

 <input type="number" min="0" max="99" onKeyUp="if(this.value>99){this.value='99';}else if(this.value<0){this.value='0';}" id="yourid"> 

तब (यदि आप चाहें), तो आप जांच सकते हैं कि इनपुट वास्तव में संख्या है

 //For Angular I have attached following snippet. 
 <div ng-app=""> <form> Enter number: <input type="number" ng-model="number" onKeyPress="if(this.value.length==7) return false;" min="0"> </form> <h1>You entered: {{number}}</h1> </div> 

आप इसे टेक्स्ट के रूप में निर्दिष्ट कर सकते हैं, लेकिन पॅटर्न को जोड़ सकते हैं, जो केवल मैच नंबर:

 <input type="text" pattern="\d*" maxlength="2"> 

यह सही और मोबाइल पर भी काम करता है (आईओएस 8 और एंड्रॉइड पर परीक्षण किया गया) नंबर कुंजीपॉइस फ़ैसला करता है।

मैक्स लम्बाई <input type="number" के साथ काम नहीं करेगी जो मुझे सबसे अच्छी तरह पता है कि अधिकतम लंबाई को सीमित करने के लिए oninput ईवेंट का उपयोग करना है। सरल कार्यान्वयन के लिए नीचे कोड देखें।

 <input name="somename" oninput="javascript: if (this.value.length > this.maxLength) this.value = this.value.slice(0, this.maxLength);" type = "number" maxlength = "6" /> 

मेकॉ मोरा का जवाब अच्छी शुरुआत थी। हालांकि, उनके समाधान का मतलब है कि जब आप दूसरे अंक में प्रवेश करते हैं, तो क्षेत्र के सभी संपादन बंद हो जाते हैं। तो आप मूल्यों को नहीं बदल सकते हैं या किसी भी वर्ण को हटा सकते हैं।

निम्नलिखित कोड 2 पर बंद हो जाता है, लेकिन संपादन को जारी रखने की अनुमति देता है;

 //MaxLength 2 onKeyDown="if(this.value.length==2) this.value = this.value.slice(0, - 1);" 

मुझे पहले इस समस्या थी और मैंने इसे html5 नंबर प्रकार और jQuery के संयोजन के द्वारा हल किया।

 <input maxlength="2" min="0" max="59" name="minutes" value="0" type="number"/> 

स्क्रिप्ट:

 $("input[name='minutes']").on('keyup keypress blur change', function(e) { //return false if not 0-9 if (e.which != 8 && e.which != 0 && (e.which < 48 || e.which > 57)) { return false; }else{ //limit length but allow backspace so that you can still delete the numbers. if( $(this).val().length >= parseInt($(this).attr('maxlength')) && (e.which != 8 && e.which != 0)){ return false; } } }); 

मुझे नहीं पता कि घटनाओं में थोड़ा सा उछाल है, लेकिन यह मेरी समस्या का हल निकाला। JSfiddle

type="number" साथ-साथ, आप max maxlength संपत्ति के बजाय max निर्दिष्ट करते हैं, जो संभवतः अधिकतम संभव संख्या है। तो 4 अंकों के साथ, max 9999 , 5 अंक 99999 और इतने पर होना चाहिए।

अगर आप यह सुनिश्चित करना चाहते हैं कि यह एक सकारात्मक संख्या है, तो आप min="0" निर्धारित कर सकते हैं, सकारात्मक संख्या सुनिश्चित कर सकते हैं।

आप लंबाई प्रतिबंध के साथ संख्यात्मक इनपुट के लिए भी यह कोशिश कर सकते हैं

 <input type="tel" maxlength="3" /> 

जैसा कि अन्य लोगों द्वारा कहा गया है, न्यूनतम / अधिकतम अधिकतम लंबाई के समान नहीं है क्योंकि लोग अभी भी एक फ्लोट दर्ज कर सकते हैं जो आपके द्वारा इच्छित अधिकतम स्ट्रिंग लंबाई से बड़ा होगा। अधिकतम लम्बाई विशेषता का सही रूप से अनुकरण करने के लिए, आप ऐसा कुछ एक चुटकी में कर सकते हैं (यह अधिकतम लंबाई = "16" के बराबर है):

 <input type="number" oninput="if(value.length>16)value=value.slice(0,16)"> 

एक और विकल्प यह है कि बस अधिकतमलेम्बिथ एट्रिब्यूट के साथ कुछ के लिए श्रोता को जोड़ना और उसके लिए टुकड़ा मूल्य जोड़ना है मान लें कि उपयोगकर्ता इनपुट से संबंधित प्रत्येक घटना के अंदर किसी फ़ंक्शन का उपयोग नहीं करना चाहता। यहां एक कोड स्निपेट है सीएसएस और एचटीएमएल कोड पर ध्यान न दें, जावास्क्रिप्ट क्या मायने रखता है

 // Reusable Function to Enforce MaxLength function enforce_maxlength(event) { var t = event.target; if (t.hasAttribute('maxlength')) { t.value = t.value.slice(0, t.getAttribute('maxlength')); } } // Global Listener for anything with an maxlength attribute. // I put the listener on the body, put it on whatever. document.body.addEventListener('input', enforce_maxlength); 
 label { margin: 10px; font-size: 16px; display: block } input { margin: 0 10px 10px; padding: 5px; font-size: 24px; width: 100px } span { margin: 0 10px 10px; display: block; font-size: 12px; color: #666 } 
 <label for="test_input">Text Input</label> <input id="test_input" type="text" maxlength="5"/> <span>set to 5 maxlength</span> <br> <label for="test_input">Number Input</label> <input id="test_input" type="number" min="0" max="99" maxlength="2"/> <span>set to 2 maxlength, min 0 and max 99</span> 

उपयोग करने के लिए अधिक प्रासंगिक विशेषताओं का min और max होगा

मुझे पता है कि पहले से ही एक उत्तर है, लेकिन यदि आप चाहते हैं कि आपका इनपुट maxlength विशेषता की तरह व्यवहार करे या जितना करीब हो, निम्न कोड का उपयोग करें:

 (function($) { methods = { /* * addMax will take the applied element and add a javascript behavior * that will set the max length */ addMax: function() { // set variables var maxlAttr = $(this).attr("maxlength"), maxAttR = $(this).attr("max"), x = 0, max = ""; // If the element has maxlength apply the code. if (typeof maxlAttr !== typeof undefined && maxlAttr !== false) { // create a max equivelant if (typeof maxlAttr !== typeof undefined && maxlAttr !== false){ while (x < maxlAttr) { max += "9"; x++; } maxAttR = max; } // Permissible Keys that can be used while the input has reached maxlength var keys = [ 8, // backspace 9, // tab 13, // enter 46, // delete 37, 39, 38, 40 // arrow keys<^>v ] // Apply changes to element $(this) .attr("max", maxAttR) //add existing max or new max .keydown(function(event) { // restrict key press on length reached unless key being used is in keys array or there is highlighted text if ($(this).val().length == maxlAttr && $.inArray(event.which, keys) == -1 && methods.isTextSelected() == false) return false; });; } }, /* * isTextSelected returns true if there is a selection on the page. * This is so that if the user selects text and then presses a number * it will behave as normal by replacing the selection with the value * of the key pressed. */ isTextSelected: function() { // set text variable text = ""; if (window.getSelection) { text = window.getSelection().toString(); } else if (document.selection && document.selection.type != "Control") { text = document.selection.createRange().text; } return (text.length > 0); } }; $.maxlengthNumber = function(){ // Get all number inputs that have maxlength methods.addMax.call($("input[type=number]")); } })($) // Apply it: $.maxlengthNumber(); 

जैसा कि मुझे पता चला है कि आप मोबाइल ब्राउज़र सहित एक पूर्ण समाधान के लिए onkeydown , onkeypress या onkeyup घटनाओं में से किसी का उपयोग नहीं कर सकते। जिस तरह से onkeypress नापसंद है और क्रोम / ओपेरा में एंड्रॉइड के लिए अब मौजूद नहीं है (देखें: यूआई इवेंट्स W3C वर्किंग ड्राफ्ट, 04 अगस्त 2016 )।

मैंने केवल एक oninput ईवेंट का उपयोग करके एक समाधान oninput । आपको नकारात्मक / पॉजिटिव साइन या दशमलव और हजार विभाजक और पसंद की आवश्यकता के अनुसार अतिरिक्त संख्या की जांच करना पड़ सकता है, लेकिन निम्नलिखित के रूप में शुरू करना आवश्यक है:

 function checkMaxLength(event) { // Prepare to restore the previous value. if (this.oldValue === undefined) { this.oldValue = this.defaultValue; } if (this.value.length > this.maxLength) { // Set back to the previous value. this.value = oldVal; } else { // Store the previous value. this.oldValue = this.value; // Make additional checks for +/- or ./, etc. // Also consider to combine 'maxlength' // with 'min' and 'max' to prevent wrong submits. } } 

HTML इनपुट

  <input class="minutesInput" type="number" min="10" max="120" value="" /> 

jQuery

  $(".minutesInput").on('keyup keypress blur change', function(e) { if($(this).val() > 120){ $(this).val('120'); return false; } });