input輸入框驗證郵箱,身份證號碼,手機號碼(為了加深記憶,菜鳥,勿噴)
<form action="">
輸入:<input type="text" name="idcard" id="idcard" placeholder="請輸入郵箱">
<input type="button" value="驗證" onclick="check();">
</form>
<script>
function check(){
var reg = new RegExp("^[a-z0-9]+([._\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$");
var obj = document.getElementById("idcard");
if(obj.value === ""){
alert("輸入不能為空!");
return false;
}else if(!reg.test(obj.value)){
alert("請輸入有效合法的郵箱地址!");
return false;
}else{
alert("有效合法的郵箱地址!");
return true;
}
//身份證號碼
var idcard=document.getElementById('idcard')
if(!idcard){
alert("請輸入有效合法的身份證號碼!");
return false;
}
if(idcard.length<18){
alert("請輸入有效合法的身份證號碼!");
return false;
}
let len = 17;
let sum = 0;
let yzArray = [7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2];
let codeArray = ['1','0','X','9','8','7','6','5','4','3','2'];
for(let i=0;i<len;i++){
sum+=idcard[i]*yzArray[i];
}
let mod = sum%11;
if( codeArray[mod]==idcard[17] ){
alert("有效合法的身份證號碼!");
return true;
}
return false;
}
身份證號18位編碼規則,6位數字地址碼,8位數字出生日期碼,3位順序碼,1位數字校驗碼。演算法自行百度。
var phone = document.getElementById('idcard').value;
if(!(/^1(3|4|5|7|8)\d{9}$/.test(phone))){
alert("請輸入有效合法的手機號碼!");
return false;
}
</script>