色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

javascript 驗證小數(shù)

黃保華1年前7瀏覽0評論
Javascript 驗證小數(shù)
在我們的應用程序中,驗證小數(shù)是很常見的需求。比如,當我們需要輸入一個訂單的數(shù)量、運費、或者價格等金額時,我們希望用戶只能輸入符合要求的小數(shù)值,并且小數(shù)點后最多只能有兩位。因此,我們需要使用Javascript來進行小數(shù)的驗證。
使用正則表達式驗證小數(shù)
Javascript中可以使用正則表達式來驗證小數(shù),下面是一個示例代碼:
function validDecimal(input){
var regex = /^\d+(\.\d{1,2})?$/;
return regex.test(input.value);
}

上面的代碼使用了正則表達式來驗證小數(shù),這個正則表達式的意思是:
-^:輸入字符串的開始位置 -\d+:表示1個或多個數(shù)字字符 -(\.\d{1,2})?:表示匹配一個小數(shù)點和接下來的1到2個數(shù)字,這個小數(shù)點和數(shù)字可以出現(xiàn)也可以不出現(xiàn) -$:表示字符串的結束位置
所以,這個正則表達式匹配的是符合小數(shù)規(guī)則的數(shù)字串,包括整數(shù)和小數(shù)。
驗證input文本框的值:
function validateForm() {
var input = document.getElementById("input");
if(!validDecimal(input)){
alert("請輸入正確的小數(shù)");
input.focus();
return false;
}
return true;
}

在表單提交或某個按鈕點擊事件時,我們調用validateForm函數(shù)來驗證input文本框中的值是否符合我們的要求。
這個函數(shù)首先獲取input文本框的值,在調用之前定義的validDecimal函數(shù)來驗證輸入值。如果輸入值不符合規(guī)則,會有一個警告框提示用戶。如果輸入值符合規(guī)則,則函數(shù)會返回true。
完整的小數(shù)驗證函數(shù)
下面是一個對小數(shù)進行驗證的完整的函數(shù):
function isDecimal(c) {
if ((c >= '0' && c <= '9') || c == '.' || c == '-') {
return true;
} else {
return false;
}
}
<br>
function ValidateDecimal(input) {
var dotCount=0;
var minusCount=0;
var decimalCount=0;
var ch;
<br>
   if (input.length==0 ) {
return false;
}
<br>
   for (var i=0; i < input.length; i++) {
ch = input.charAt(i);
<br>
      if (!isDecimal(ch)) {
alert("請輸入正確的小數(shù)");
return false;
}
<br>
	  if (ch == '.') {
dotCount++;
decimalCount++;
}
<br>
      if (ch == '-') {
minusCount++;
}
}
<br>
   if (minuCount > 1 || dotCount > 1 || decimalCount > 2) {
alert("請輸入正確的小數(shù)");
return false;
}
<br>
   return true;
}

這個函數(shù)很靈活,它允許小數(shù)后面不輸入數(shù)字,默認小數(shù)點后兩個數(shù)字,也可以通過修改變量decimalCount,來設置小數(shù)點后的數(shù)字個數(shù)。同時,該函數(shù)也規(guī)定了小數(shù)點和負號不能同時存在,并且小數(shù)點不能超過一個。
結論
通過正則表達式的方式,我們很容易就能實現(xiàn)小數(shù)驗證功能。同時,后臺也應該進行驗證防止非法數(shù)據(jù)提交。這樣才能有效地保護我們的應用程序和用戶數(shù)據(jù)的安全。