JS常用校验方法(判断输入框是否为空,数字,电话,邮件,四舍五入等)
JS常用校驗方法:
1、判斷輸入框是否為空,為空時彈出提示框
2、關閉窗口
3、檢查輸入字符串是否為數字
4、強制把大寫轉換成小寫
5、手機號碼校驗,長度為11位數字。
6、電子郵件校驗
7、電話號碼校驗
8、身份證號碼校驗
9、校驗必須是數字或者字母
10、檢驗數字是否正確(可以為負數)
11、將小數四舍五入
詳細代碼清單如下:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>JAVA SCRIPT study</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
<script type="text/javascript">
//檢查對象是否為空,obj-對象,vMc-提示信息
function checkNull(obj,vline){
//判斷輸入框是否為空,為空時彈出提示框
var v=document.getElementById(obj).value;
v=v.replace(/(^\s*)|(\s*$)/g,"");///去除空格的方法
alert(" 輸入值為空!"+v.length);
if (v.length==0){
alert(vline+" 輸入值為空!");
return false;
}
return true;
}//關閉窗口
function closewin(){
//關閉窗體無網頁提示關閉信息
window.opener = "";
window.close();
}//檢查輸入字符串是否為數字
//參數說明:數據項,輸入的對象
//返回值:1-是數字,0-非數字
function isNum(vid,obj){
re=new RegExp("[^0-9]");
var s;
var i_value=document.getElementById(obj).value;
if(s=i_value.match(re)){
alert("'"+vid+"' 中含有非法字符 '"+s+"'!");
return 0;
}
return 1;
}//強制把大寫轉換成小寫
function toLowCase(){
// alert("ss");
if(event.keyCode>=65 && event.keyCode<=90)
event.keyCode=event.keyCode+32;
}//手機號碼校驗,長度為11位數字。
function checkMobile(str) {var Str=document.getElementById(str).value;
RegularExp=/^[0-9]{11}$/
if (RegularExp.test(Str)) {
return true;
}
else {
alert("手機號格式不正確!應該為11位長度的數字!");
return false;
}
}
//電子郵件校驗
function checkMail(str)
{
var Str=document.getElementById(str).value;
RegularExp = /[a-z0-9]*@[a-z0-9]*\.[a-z0-9]+/gi
if (RegularExp.test(Str))
{
return true;
}else{
alert("電子信箱格式不對!");
return false;
}
}//電話號碼校驗
function checkTel(str)
{
//
var Str=document.getElementById(str).value;
RegularExp = /^((([0-9]{4}|[0-9]{3})-)|(\(([0-9]{4}|[0-9]{3})\)))*([0-9]{7}|[0-9]{8})$|^[0-9]{11}$/
if (RegularExp.test(Str))
{
//alert("電話號碼格式對");
return true;
}else{
alert("電話號碼格式不對");
return false;
}
}
//身份證號碼校驗
function checkID_Card(str)
{
var Str=document.getElementById(str).value;
RegularExp = /^[0-9]{17}[0-9A-Za-z]{1}$|^[0-9]{14}[0-9A-Za-z]{1}$/
if (RegularExp.test(Str))
{
return true;
}else{
alert("身份證號格式不對!");
return false;
}
}
//校驗必須是數字或者字母
function checkNumStr(str)
{
var Str=document.getElementById(str).value;
var str1="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
var i=0;
for (i=0; i<Str.length;i++) {
var onechar=Str.substring(i,i+1);
//alert(onechar);
if (!(str1.indexOf(onechar)!= -1)){
alert("必須是數字[0-9]、字母[a-z、A-Z]或組合!");
return false;
}
}return true;
}//檢驗數字是否正確(可以為負數)
//參數1:sourceStr 數字
//int_num 整數位數
//point_num 小數位數
//alertStr 彈出的提示信息
function JudgeDicimalFormat(str ,int_num,point_num,alertStr) {
var sourceStr=document.getElementById(str).value;
RegularExp_tmp="/^[+,-]{0,1}[0-9]{0,"+int_num+"}[.]{1}[0-9]{0,"+point_num+"}$|^[+,-]{0,1}[0-9]{0,"+int_num+"}$/";
RegularExp=eval(RegularExp_tmp);
if (RegularExp.test(sourceStr)) {
return true;
}
else {
alert(alertStr+"格式不正確!最長為"+int_num+"位整數位,"+point_num+"位小數位的數字!");
//sourceStr.select();
return false;
}
}//將小數四舍五入
//decimalNum 為:保留小數點后幾位
function roundFloat(str, decimalNum) {
var sourceValue=document.getElementById(str).value;
if (isNaN(sourceValue)) {
alert("sourceValue非法字符 ");
document.getElementById(str).value="";
return sourceValue;
}
var multiplyValue=Math.pow(10,parseInt(decimalNum));
document.getElementById(str).value=(Math.round(multiplyValue*sourceValue))/multiplyValue;
//return (Math.round(multiplyValue*sourceValue))/multiplyValue;
}</script>
</head>
<body>
javascript 學習 <br>
<input type="text" name="tt" id="tt" onblur="checkNull('tt','用戶名');">
校驗文本框或者其他輸入框是否為空,去除前后空格(失去焦點時觸發)<br><br>
<input type="button" onclick="closewin();" value="關閉窗體"><br><br>
<input type="text" name="num" id="num" onblur="isNum('年齡','num');">
校驗文本框或者其他輸入框中輸入的值是否全部是數字<br><br>
<input type="text" name="cae" id="cae" onkeypress="toLowCase();return fasle;">
強制把大寫轉換成小寫<br><br>
<input type="text" name="mobile" id="mobile" onblur="checkMobile('mobile');">
手機號碼校驗(11位)<br><br>
<input type="text" name="mail" id="mail" onblur="checkMail('mail');">
電子郵件校驗<br><br>
<input type="text" name="tel" id="tel" onblur="checkTel('tel');">
電話號碼校驗<br><br>
<input type="text" name="card" id="card" onblur="checkID_Card('card');">
身份證號碼 校驗<br><br>
<input type="text" name="pchar" id="pchar" onblur="checkNumStr('pchar');">
普通字符檢驗(數字或者字母)<br><br>
<input type="text" name="isnum" id="isnum" onblur="JudgeDicimalFormat('isnum','3','3','數字');">
檢驗數字是否正確(可以為負數)<br><br>
<input type="text" name="fol" id="fol" onblur="roundFloat('fol','2');">
//將小數四舍五入
//decimalNum 為:保留小數點后幾位<br><br>
</body>
</html>