HTML 5
आप केवल नंबर प्रविष्टियों को प्रतिबंधित करने के लिए HTML5 इनपुट प्रकार संख्या का उपयोग कर सकते हैं :
<input type="number" name="someid" />
यह केवल HTML5 शिकायत ब्राउज़र में काम करेगा। सुनिश्चित करें कि आपके HTML दस्तावेज़ का सिद्धांत है:
<!DOCTYPE html>
पुराने ब्राउज़र में पारदर्शी समर्थन के लिए https://github.com/jonstipe/number-polyfill भी देखें ।
जावास्क्रिप्ट
अपडेट: इसके लिए एक नया और बहुत सरल उपाय है:
यह आपको पाठ पर किसी भी प्रकार के इनपुट फिल्टर का उपयोग करने की अनुमति देता है <input>
, जिसमें विभिन्न संख्यात्मक फिल्टर भी शामिल हैं। यह कॉपी + पेस्ट, ड्रैग + ड्रॉप, कीबोर्ड शॉर्टकट, संदर्भ मेनू संचालन, गैर-टाइप करने योग्य कुंजी और सभी कीबोर्ड लेआउट को सही ढंग से संभाल लेगा।
इस उत्तर को देखें या इसे JSFiddle पर स्वयं आज़माएं ।
सामान्य प्रयोजन के लिए, आपके पास नीचे जेएस सत्यापन हो सकता है:
function isNumberKey(evt){
var charCode = (evt.which) ? evt.which : evt.keyCode
if (charCode > 31 && (charCode < 48 || charCode > 57))
return false;
return true;
}
<input name="someid" type="number" onkeypress="return isNumberKey(event)"/>
यदि आप दशमलव को "यदि स्थिति" इसके साथ बदलना चाहते हैं:
if (charCode > 31 && (charCode != 46 &&(charCode < 48 || charCode > 57)))
स्रोत: HTML पाठ इनपुट केवल संख्यात्मक इनपुट की अनुमति देता है
JSFiddle डेमो: http://jsfiddle.net/viralpatel/nSjy7/