আমি কীভাবে কোনও পাঠ্য-বাক্সে সীমাবদ্ধ রাখতে পারি যাতে এটি কেবল সংখ্যা এবং দশমিক বিন্দু গ্রহণ করে?
isNaN(this.textbox.value)??
আমি কীভাবে কোনও পাঠ্য-বাক্সে সীমাবদ্ধ রাখতে পারি যাতে এটি কেবল সংখ্যা এবং দশমিক বিন্দু গ্রহণ করে?
isNaN(this.textbox.value)??
উত্তর:
<HTML>
<HEAD>
<SCRIPT language=Javascript>
<!--
function isNumberKey(evt)
{
var charCode = (evt.which) ? evt.which : evt.keyCode;
if (charCode != 46 && charCode > 31
&& (charCode < 48 || charCode > 57))
return false;
return true;
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<INPUT id="txtChar" onkeypress="return isNumberKey(event)"
type="text" name="txtChar">
</BODY>
</HTML>
এটি সত্যিই কাজ করে!
&& charCode != 190 && charCode != 110 && (charCode > 105 || charCode < 96)
form.onsubmit = function(){
return textarea.value.match(/^\d+(\.\d+)?$/);
}
এটি কি আপনি খুঁজছেন?
আমি আসা করি এটা সাহায্য করবে.
সম্পাদনা: আমি আমার উদাহরণটি উপরে উপরে সম্পাদনা করেছি যাতে কমপক্ষে একটি অঙ্কের আগে এবং পরে কমপক্ষে একটি অঙ্কের পরে কেবল একটি পিরিয়ড থাকতে পারে।
গৃহীত সমাধানটি সম্পূর্ণ নয়, যেহেতু আপনি একাধিক '।' লিখতে পারেন, উদাহরণস্বরূপ 24 .... 22..22। কিছু ছোট পরিবর্তন সহ এটি এটি যেমন কাজ করবে:
<html>
<head>
<script type="text/javascript">
function isNumberKey(txt, evt) {
var charCode = (evt.which) ? evt.which : evt.keyCode;
if (charCode == 46) {
//Check if the text already contains the . character
if (txt.value.indexOf('.') === -1) {
return true;
} else {
return false;
}
} else {
if (charCode > 31 &&
(charCode < 48 || charCode > 57))
return false;
}
return true;
}
</script>
</head>
<body>
<input type="text" onkeypress="return isNumberKey(this, event);" />
</body>
</html>
ondrop="return false;" onpaste="return false;" oncontextmenu="return false;"করা যথেষ্ট বলে মনে হচ্ছে
এখানে আরও একটি সমাধান যা দশমিক সংখ্যার জন্য অনুমতি দেয় এবং দশমিকের পরে সংখ্যাগুলিও 2 দশমিক স্থানে সীমাবদ্ধ করে।
function isNumberKey(evt, element) {
var charCode = (evt.which) ? evt.which : event.keyCode
if (charCode > 31 && (charCode < 48 || charCode > 57) && !(charCode == 46 || charCode == 8))
return false;
else {
var len = $(element).val().length;
var index = $(element).val().indexOf('.');
if (index > 0 && charCode == 46) {
return false;
}
if (index > 0) {
var CharAfterdot = (len + 1) - index;
if (CharAfterdot > 3) {
return false;
}
}
}
return true;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="number" id="rate" placeholder="Billing Rate" required onkeypress="return isNumberKey(event,this)">
ifএকটি মূলধন "সি" হারিয়েছে।
.), ড্যাশ ( -) এবং eঅক্ষরটিকে যখন পাঠ্যটি আটকানো হয় বা ক্ষেত্রের মধ্যে ফেলে যায় তখন অনুমতি দেয়। এইচটিএমএল উপাদান ক্রোমে ডিফল্টরূপে সংখ্যা বৃদ্ধি এবং হ্রাস করার জন্য দুটি তীর প্রদর্শন করবে। হ্রাসকারী বোতামটি শূন্যের নীচে নামতে দেয়।
এখানে উপস্থাপিত সমস্ত সমাধান একক কী ইভেন্টগুলি ব্যবহার করছে। এটি অত্যন্ত ত্রুটিযুক্ত প্রবণতা হ'ল অনুলিপি অনুলিপি বা ড্রাগ'রপ্রপ ব্যবহার করে ইনপুটও দেওয়া যেতে পারে। এছাড়াও সমাধানগুলির মধ্যে কিছু অক্ষরযুক্ত কীগুলির ব্যবহারকে সীমাবদ্ধ করেctrl+c , Pos1ইত্যাদি
আমি প্রতিটি কী প্রেস পরীক্ষা না করে আপনাকে পরামর্শ দিচ্ছি যে ফলাফলটি আপনার প্রত্যাশাগুলির ক্ষেত্রে বৈধ কিনা আপনি পরীক্ষা করে দেখুন।
var validNumber = new RegExp(/^\d*\.?\d*$/);
var lastValid = document.getElementById("test1").value;
function validateNumber(elem) {
if (validNumber.test(elem.value)) {
lastValid = elem.value;
} else {
elem.value = lastValid;
}
}
<textarea id="test1" oninput="validateNumber(this);" ></textarea>
দ্য oninputঘটনার সূত্রপাত হয় কিছু পরেই পাঠ্য এলাকার এবং অনুষ্ঠিত হওয়ার আগে পরিবর্তন করা হয়েছে।
আপনি যে নাম্বার ফর্ম্যাটটি গ্রহণ করতে চান তাতে আপনি RegEx প্রসারিত করতে পারেন। এটি একক কী প্রেসগুলি পরীক্ষা করার চেয়ে অনেক বেশি রক্ষণাবেক্ষণযোগ্য এবং প্রসারিত।
আপনি কি এই জাতীয় কিছু খুঁজছেন?
<HTML>
<HEAD>
<SCRIPT language=Javascript>
<!--
function isNumberKey(evt)
{
var charCode = (evt.which) ? evt.which : event.keyCode
if (charCode != 46 && charCode > 31 && (charCode < 48 || charCode > 57))
return false;
return true;
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<INPUT id="txtChar" onkeypress="return isNumberKey(event)" type="text" name="txtChar">
</BODY>
</HTML>
Jquery এ কেবল এই পদ্ধতিটি প্রয়োগ করা দরকার এবং আপনি কেবলমাত্র দশমিকের সাথে সংখ্যা গ্রহণ করার জন্য আপনার পাঠ্যবক্সটি বৈধ করতে পারেন।
function IsFloatOnly(element) {
var value = $(element).val();
var regExp ="^\\d+(\\.\\d+)?$";
return value.match(regExp);
}
এখানে কাজ ডেমো দেখুন
এখানে যেমন কারও হোঁচট খাচ্ছে তার জন্য এখানে আমি লিখেছি jQuery 1.10.2 সংস্করণ যা আমার জন্য খুব ভাল কাজ করছে যদিও নিবিড় সংস্থান থেকেও:
/***************************************************
* Only allow numbers and one decimal in text boxes
***************************************************/
$('body').on('keydown keyup keypress change blur focus paste', 'input[type="text"]', function(){
var target = $(this);
var prev_val = target.val();
setTimeout(function(){
var chars = target.val().split("");
var decimal_exist = false;
var remove_char = false;
$.each(chars, function(key, value){
switch(value){
case '0':
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
case '8':
case '9':
case '.':
if(value === '.'){
if(decimal_exist === false){
decimal_exist = true;
}
else{
remove_char = true;
chars[''+key+''] = '';
}
}
break;
default:
remove_char = true;
chars[''+key+''] = '';
break;
}
});
if(prev_val != target.val() && remove_char === true){
target.val(chars.join(''))
}
}, 0);
});
দশমিকটি পুরোপুরি কার্যকর করার জন্য @ রেবিস্কোর উজ্জ্বল উত্তরের একটি ছোট সংশোধন।
function isNumberKey(evt) {
debugger;
var charCode = (evt.which) ? evt.which : event.keyCode;
if (charCode == 46 && evt.srcElement.value.split('.').length>1) {
return false;
}
if (charCode != 46 && charCode > 31 && (charCode < 48 || charCode > 57))
return false;
return true;
}
যদি আপনি এটি ভাসমান মানগুলির জন্য চান,
এখানে আমি ব্যবহার করছি ফাংশন
<HTML>
<HEAD>
<SCRIPT language=Javascript>
<!--
function check(e, value) {
//Check Charater
var unicode = e.charCode ? e.charCode : e.keyCode;
if (value.indexOf(".") != -1)
if (unicode == 46) return false;
if (unicode != 8)
if ((unicode < 48 || unicode > 57) && unicode != 46) return false;
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<INPUT id="txtChar" onkeypress="return check(event,value)" type="text" name="txtChar">
</BODY>
</HTML>
function integerwithdot(s, iid){
var i;
s = s.toString();
for (i = 0; i < s.length; i++){
var c;
if (s.charAt(i) == ".") {
} else {
c = s.charAt(i);
}
if (isNaN(c)) {
c = "";
for(i=0;i<s.length-1;i++){
c += s.charAt(i);
}
document.getElementById(iid).value = c;
return false;
}
}
return true;
}
এখানে স্ক্রিপ্ট যা আপনাকে সাহায্য করবে:
<script type="text/javascript">
// price text-box allow numeric and allow 2 decimal points only
function extractNumber(obj, decimalPlaces, allowNegative)
{
var temp = obj.value;
// avoid changing things if already formatted correctly
var reg0Str = '[0-9]*';
if (decimalPlaces > 0) {
reg0Str += '\[\,\.]?[0-9]{0,' + decimalPlaces + '}';
} else if (decimalPlaces < 0) {
reg0Str += '\[\,\.]?[0-9]*';
}
reg0Str = allowNegative ? '^-?' + reg0Str : '^' + reg0Str;
reg0Str = reg0Str + '$';
var reg0 = new RegExp(reg0Str);
if (reg0.test(temp)) return true;
// first replace all non numbers
var reg1Str = '[^0-9' + (decimalPlaces != 0 ? '.' : '') + (decimalPlaces != 0 ? ',' : '') + (allowNegative ? '-' : '') + ']';
var reg1 = new RegExp(reg1Str, 'g');
temp = temp.replace(reg1, '');
if (allowNegative) {
// replace extra negative
var hasNegative = temp.length > 0 && temp.charAt(0) == '-';
var reg2 = /-/g;
temp = temp.replace(reg2, '');
if (hasNegative) temp = '-' + temp;
}
if (decimalPlaces != 0) {
var reg3 = /[\,\.]/g;
var reg3Array = reg3.exec(temp);
if (reg3Array != null) {
// keep only first occurrence of .
// and the number of places specified by decimalPlaces or the entire string if decimalPlaces < 0
var reg3Right = temp.substring(reg3Array.index + reg3Array[0].length);
reg3Right = reg3Right.replace(reg3, '');
reg3Right = decimalPlaces > 0 ? reg3Right.substring(0, decimalPlaces) : reg3Right;
temp = temp.substring(0,reg3Array.index) + '.' + reg3Right;
}
}
obj.value = temp;
}
function blockNonNumbers(obj, e, allowDecimal, allowNegative)
{
var key;
var isCtrl = false;
var keychar;
var reg;
if(window.event) {
key = e.keyCode;
isCtrl = window.event.ctrlKey
}
else if(e.which) {
key = e.which;
isCtrl = e.ctrlKey;
}
if (isNaN(key)) return true;
keychar = String.fromCharCode(key);
// check for backspace or delete, or if Ctrl was pressed
if (key == 8 || isCtrl)
{
return true;
}
reg = /\d/;
var isFirstN = allowNegative ? keychar == '-' && obj.value.indexOf('-') == -1 : false;
var isFirstD = allowDecimal ? keychar == '.' && obj.value.indexOf('.') == -1 : false;
var isFirstC = allowDecimal ? keychar == ',' && obj.value.indexOf(',') == -1 : false;
return isFirstN || isFirstD || isFirstC || reg.test(keychar);
}
function blockInvalid(obj)
{
var temp=obj.value;
if(temp=="-")
{
temp="";
}
if (temp.indexOf(".")==temp.length-1 && temp.indexOf(".")!=-1)
{
temp=temp+"00";
}
if (temp.indexOf(".")==0)
{
temp="0"+temp;
}
if (temp.indexOf(".")==1 && temp.indexOf("-")==0)
{
temp=temp.replace("-","-0") ;
}
if (temp.indexOf(",")==temp.length-1 && temp.indexOf(",")!=-1)
{
temp=temp+"00";
}
if (temp.indexOf(",")==0)
{
temp="0"+temp;
}
if (temp.indexOf(",")==1 && temp.indexOf("-")==0)
{
temp=temp.replace("-","-0") ;
}
temp=temp.replace(",",".") ;
obj.value=temp;
}
// end of price text-box allow numeric and allow 2 decimal points only
</script>
<input type="Text" id="id" value="" onblur="extractNumber(this,2,true);blockInvalid(this);" onkeyup="extractNumber(this,2,true);" onkeypress="return blockNonNumbers(this, event, true, true);">
মনে করুন আপনার পাঠ্যবক্স ক্ষেত্রের নামটি Income
এই বৈধকরণ পদ্ধতিটি কল করুন যখন আপনার ক্ষেত্রটি বৈধ করার দরকার হয়:
function validate() {
var currency = document.getElementById("Income").value;
var pattern = /^[1-9]\d*(?:\.\d{0,2})?$/ ;
if (pattern.test(currency)) {
alert("Currency is in valid format");
return true;
}
alert("Currency is not in valid format!Enter in 00.00 format");
return false;
}
@ রেবিস্কোর উত্তর বাড়ানো হচ্ছে। এই নীচের কোডটি পাঠ্য বাক্সে কেবলমাত্র সংখ্যা এবং একক '।' (পিরিয়ড) অনুমতি দেবে।
function isNumberKey(evt) {
var charCode = (evt.which) ? evt.which : event.keyCode;
if (charCode != 46 && charCode > 31 && (charCode < 48 || charCode > 57)) {
return false;
} else {
// If the number field already has . then don't allow to enter . again.
if (evt.target.value.search(/\./) > -1 && charCode == 46) {
return false;
}
return true;
}
}
আরও ভাল সমাধান
var checkfloats = function(event){
var charCode = (event.which) ? event.which : event.keyCode;
if (charCode != 46 && charCode > 31 && (charCode < 48 || charCode > 57))
return false;
if(event.target.value.indexOf('.') >=0 && charCode == 46)
return false;
return true;
}
@ রিবিস্কো উত্তর থেকে শুরু:
function count_appearance(mainStr, searchFor) {
return (mainStr.split(searchFor).length - 1);
}
function isNumberKey(evt)
{
$return = true;
var charCode = (evt.which) ? evt.which : event.keyCode;
if (charCode != 46 && charCode > 31
&& (charCode < 48 || charCode > 57))
$return = false;
$val = $(evt.originalTarget).val();
if (charCode == 46) {
if (count_appearance($val, '.') > 0) {
$return = false;
}
if ($val.length == 0) {
$return = false;
}
}
return $return;
}
কেবল এই ফর্ম্যাটটিকে অনুমতি দেয়: 123123123 [.121213]
ডেমো এখানে ডেমো
আশা করি এটি আপনার পক্ষে কাজ করবে।
<input type="text" onkeypress="return chkNumeric(event)" />
<script>
function chkNumeric(evt) {
evt = (evt) ? evt : window.event;
var charCode = (evt.which) ? evt.which : evt.keyCode;
if (charCode > 31 && (charCode < 48 || charCode > 57)) {
if (charCode == 46) { return true; }
else { return false; }
}
return true;
}
</script>
নিম্নলিখিত কোডটি আমার পক্ষে কাজ করেছিল
নীচে "onkeypress" ইভেন্ট সহ ইনপুট বাক্স
<input type="text" onkeypress="return isNumberKey(this,event);" />
"IsNumberKey" ফাংশনটি নীচে রয়েছে
function isNumberKey(txt, evt) {
var charCode = (evt.which) ? evt.which : evt.keyCode;
if (charCode == 46) {
//Check if the text already contains the . character
if (txt.value.indexOf('.') === -1) {
return true;
} else {
return false;
}
} else {
if (charCode > 31 && (charCode < 48 || charCode > 57))
return false;
}
return true;
}
আমি পর্যবেক্ষণ করেছি যে এখানে সরবরাহ করা সমস্ত উত্তরের জন্য, জিনিসগুলি কাজ করছে না যদি আমরা পাঠ্য বাক্সে পাঠ্যের কিছু অংশ নির্বাচন করি এবং সেই অংশটি ওভাররাইট করার চেষ্টা করি। সুতরাং আমি ফাংশনটি পরিবর্তন করেছি যা নীচের মত:
<HTML>
<HEAD>
<SCRIPT language=Javascript>
<!--
function isNumberKey(evt)
{
var charCode = (evt.which) ? evt.which : event.keyCode;
if (charCode != 46 && charCode > 31 && (charCode < 48 || charCode > 57))
{
return false;
}
if (charCode == 46 && evt.srcElement.value.split('.').length>1 )
{
return false;
}
if(evt.srcElement.selectionStart<evt.srcElement.selectionEnd)
{
return true;
}
if(evt.srcElement.value.split('.').length>1 && evt.srcElement.value.split('.')[1].length==2)
{
return false;
}
return true;
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<INPUT id="txtChar" onkeypress="return isNumberKey(event)"
type="text" name="txtChar">
</BODY>
</HTML>
দশমিক সংখ্যার জন্য এবং পয়েন্টের পরে দশমিকের জন্য 2 স্থানের সাথে নেতিবাচক সংখ্যাগুলিও অনুমতি দেয় ... আমি ফাংশনটি এখানে পরিবর্তন করেছি:
<input type="text" id="txtSample" onkeypress="return isNumberKey(event,this)"/>
function isNumberKey(evt, element){
var charCode = (evt.which) ? evt.which : event.keyCode
if (charCode > 31 && (charCode < 48 || charCode > 57) && !(charCode == 46 || charCode == 8 || charCode == 45))
return false;
else {
var len = $(element).val().length;
// Validation Point
var index = $(element).val().indexOf('.');
if ((index > 0 && charCode == 46) || len == 0 && charCode == 46) {
return false;
}
if (index > 0) {
var CharAfterdot = (len + 1) - index;
if (CharAfterdot > 3) {
return false;
}
}
// Validating Negative sign
index = $(element).val().indexOf('-');
if ((index > 0 && charCode == 45) || (len > 0 && charCode == 45)) {
return false;
}
}
return true;
}
কোনও পাঠ্য-বাক্সে ইনপুট সীমাবদ্ধ করার বিকল্প উপায় যাতে এটি কেবলমাত্র সংখ্যা গ্রহণ করে এবং দশমিক বিন্দুটি এইচটিএমএল ইনপুটটির ভিতরে জাভাস্ক্রিপ্ট ব্যবহার করা। এটি আমার পক্ষে কাজ করে:
<input type="text" class="form-control" id="price" name="price" placeholder="Price"
vrequired onkeyup="this.value=this.value.replace(/[^0-9.]/g, '').replace(/(\..*)\./g, '$1')">
--Accepts--
9
9.99
--গ্রহণ করনা--
9.99.99
অ আ ক খ
function isNumberKey(evt)
{
var charCode = (evt.which) ? evt.which : evt.keyCode;
if(charCode==8 || charCode==13|| charCode==99|| charCode==118 || charCode==46)
{
return true;
}
if (charCode > 31 && (charCode < 48 || charCode > 57))
{
return false;
}
return true;
}
এটি কেবল সংখ্যার অনুমতি দেবে এবং আপনাকে "দিতে দেবে"। দশমিক জন্য।
<script type="text/javascript">
function isNumberKey(evt) {
var charCode = (evt.which) ? evt.which : event.keyCode;
if (charCode != 46 && charCode > 31 && (charCode < 48 || charCode > 57))
return false;
return true;
}
</script>
@Html.EditorFor(model => model.Orderids, new { id = "Orderids", Onkeypress=isNumberKey(event)})
এটি কাজ করে।
খাঁটি-জাভাস্ক্রিপ্ট নমুনা লাইভ ডেমো সহ সেরা এবং কার্যক্ষম সমাধান: https://jsfiddle.net/manoj2010/ygkpa89o/
<script>
function removeCommas(nStr) {
if (nStr == null || nStr == "")
return "";
return nStr.toString().replace(/,/g, "");
}
function NumbersOnly(myfield, e, dec,neg)
{
if (isNaN(removeCommas(myfield.value)) && myfield.value != "-") {
return false;
}
var allowNegativeNumber = neg || false;
var key;
var keychar;
if (window.event)
key = window.event.keyCode;
else if (e)
key = e.which;
else
return true;
keychar = String.fromCharCode(key);
var srcEl = e.srcElement ? e.srcElement : e.target;
// control keys
if ((key == null) || (key == 0) || (key == 8) ||
(key == 9) || (key == 13) || (key == 27))
return true;
// numbers
else if ((("0123456789").indexOf(keychar) > -1))
return true;
// decimal point jump
else if (dec && (keychar == ".")) {
//myfield.form.elements[dec].focus();
return srcEl.value.indexOf(".") == -1;
}
//allow negative numbers
else if (allowNegativeNumber && (keychar == "-")) {
return (srcEl.value.length == 0 || srcEl.value == "0.00")
}
else
return false;
}
</script>
<input name="txtDiscountSum" type="text" onKeyPress="return NumbersOnly(this, event,true)" />
আমি নিজেই ইস্যুতে কাজ করছি এবং আমি এ পর্যন্ত এটি পেয়েছি। এটি কমবেশি কাজ করে তবে নতুন মান পরীক্ষার কারণে পরে বিয়োগ করা অসম্ভব। এক হাজার বিভাজক হিসাবে কমাও অনুমতি দেয় না, কেবলমাত্র দশমিক।
এটি নিখুঁত নয়, তবে কিছু ধারণা দিতে পারে।
app.directive('isNumber', function () {
return function (scope, elem, attrs) {
elem.bind('keypress', function (evt) {
var keyCode = (evt.which) ? evt.which : event.keyCode;
var testValue = (elem[0].value + String.fromCharCode(keyCode) + "0").replace(/ /g, ""); //check ignores spaces
var regex = /^\-?\d+((\.|\,)\d+)?$/;
var allowedChars = [8,9,13,27,32,37,39,44,45, 46] //control keys and separators
//allows numbers, separators and controll keys and rejects others
if ((keyCode > 47 && keyCode < 58) || allowedChars.indexOf(keyCode) >= 0) {
//test the string with regex, decline if doesn't fit
if (elem[0].value != "" && !regex.test(testValue)) {
event.preventDefault();
return false;
}
return true;
}
event.preventDefault();
return false;
});
};
});
অনুমতি:
11 11 .245 (1111.245 এ ব্লার ফর্ম্যাট করা নিয়ন্ত্রক)
11,44
-123,123
-1 014
0123 (অস্পষ্টতার সাথে 123 এ ফর্ম্যাট করা)
অনুমতি দেয় না:
! @ # $ / *
অ আ ক খ
11.11.1
11,11.1
.42
<input type="text" onkeypress="return isNumberKey(event,this)">
<script>
function isNumberKey(evt, obj) {
var charCode = (evt.which) ? evt.which : event.keyCode
var value = obj.value;
var dotcontains = value.indexOf(".") != -1;
if (dotcontains)
if (charCode == 46) return false;
if (charCode == 46) return true;
if (charCode > 31 && (charCode < 48 || charCode > 57))
return false;
return true;
}
</script>
আমি জানি যে এই প্রশ্নটি খুব পুরানো তবে তবুও আমরা প্রায়শই এ জাতীয় প্রয়োজনীয়তা পাই। সেখানে যদিও বহু উদাহরণ অনেক আছে খুব মনে করা হয় বাগাড়ম্বরপূর্ণ বা জটিল একটি সহজ implimentation জন্য।
এই https://jsfiddle.net/vibs2006/rn0fvxuk/ দেখুন এবং এটি উন্নত করুন (যদি আপনি পারেন)। এটি আইই, ফায়ারফক্স, ক্রোম এবং এজ ব্রাউজারে কাজ করে।
এখানে ওয়ার্কিং কোড রয়েছে।
function IsNumeric(e) {
var IsValidationSuccessful = false;
console.log(e.target.value);
document.getElementById("info").innerHTML = "You just typed ''" + e.key + "''";
//console.log("e.Key Value = "+e.key);
switch (e.key)
{
case "1":
case "2":
case "3":
case "4":
case "5":
case "6":
case "7":
case "8":
case "9":
case "0":
case "Backspace":
IsValidationSuccessful = true;
break;
case "Decimal": //Numpad Decimal in Edge Browser
case ".": //Numpad Decimal in Chrome and Firefox
case "Del": // Internet Explorer 11 and less Numpad Decimal
if (e.target.value.indexOf(".") >= 1) //Checking if already Decimal exists
{
IsValidationSuccessful = false;
}
else
{
IsValidationSuccessful = true;
}
break;
default:
IsValidationSuccessful = false;
}
//debugger;
if(IsValidationSuccessful == false){
document.getElementById("error").style = "display:Block";
}else{
document.getElementById("error").style = "display:none";
}
return IsValidationSuccessful;
}
Numeric Value: <input type="number" id="text1" onkeypress="return IsNumeric(event);" ondrop="return false;" onpaste="return false;" /><br />
<span id="error" style="color: Red; display: none">* Input digits (0 - 9) and Decimals Only</span><br />
<div id="info"></div>
oninputকীবোর্ড আটকানো, মাউস আটকানো এবং কী স্ট্রোকের জন্য সমস্যাটি হ্যান্ডেল করার জন্য আমি ইভেন্টটিতে এটি মোকাবেলা করতে বেছে নিয়েছি । দশমিক বা পূর্ণসংখ্যার বৈধতা নির্দেশ করতে সত্য বা মিথ্যা পাস করুন।
এটি তিনটি একটি লাইনারে মূলত তিনটি ধাপ। যদি আপনি দশমিকগুলি তৃতীয় ধাপে মন্তব্যটি কাটাতে না চান। রাউন্ডিংয়ের জন্য সামঞ্জস্যগুলি তৃতীয় ধাপেও তৈরি করা যেতে পারে।
// Example Decimal usage;
// <input type="text" oninput="ValidateNumber(this, true);" />
// Example Integer usage:
// <input type="text" oninput="ValidateNumber(this, false);" />
function ValidateNumber(elm, isDecimal) {
try {
// For integers, replace everything except for numbers with blanks.
if (!isDecimal)
elm.value = elm.value.replace(/[^0-9]/g, '');
else {
// 1. For decimals, replace everything except for numbers and periods with blanks.
// 2. Then we'll remove all leading ocurrences (duplicate) periods
// 3. Then we'll chop off anything after two decimal places.
// 1. replace everything except for numbers and periods with blanks.
elm.value = elm.value.replace(/[^0-9.]/g, '');
//2. remove all leading ocurrences (duplicate) periods
elm.value = elm.value.replace(/\.(?=.*\.)/g, '');
// 3. chop off anything after two decimal places.
// In comparison to lengh, our index is behind one count, then we add two for our decimal places.
var decimalIndex = elm.value.indexOf('.');
if (decimalIndex != -1) { elm.value = elm.value.substr(0, decimalIndex + 3); }
}
}
catch (err) {
alert("ValidateNumber " + err);
}
}
<input type="text" onkeypress='return event.charCode >= 48 && event.charCode <= 57'>
আপনি ASCII মান সীমা নির্দিষ্ট করে ব্যবহারকারীর দ্বারা প্রবেশের মানগুলিকে সীমাবদ্ধ করতে পারেন।
উদাহরণ : সংখ্যার মানগুলির জন্য 48 থেকে 57 (0 থেকে 9)