今天為大家推薦三種JavaScript驗證Email方法,希望對大家的學習有所幫助。
第一種:javascript驗證郵箱格式
<SCRIPT LANGUAGE=javascript RUNAT=Server>
function isEmail(strEmail) {
if (strEmail.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1)
return true;
else
alert("oh");
}
</SCRIPT>
<input type=text onblur=isEmail(this.value)>
第二種:用Javascript驗證email填寫是否正確
<html>
<head>
<title>test</title>
<script language="javascript">
function emailCheck () {
var emailStr=document.all.form1.tel.value;
alert(emailStr);
var emailPat=/^(.+)@(.+)$/;
var matchArray=emailStr.match(emailPat);
if (matchArray==null) {
alert("電子郵件地址必須包括 ( @ 和 . )")
return false;
}
return true;
}
</script>
</head>
<body>
<form name="form1">
<input type="text" name="tel"/>
<input type="button" value="press" onclick="emailCheck()"/>
</form>
</span>
</body>
</html>
第三種:js驗證Email
function char_test(chr)
//字符檢測函數
{
var i;
var smallch="abcdefghijklmnopqrstuvwxyz";
var bigch="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
for(i=0;i<26;i++)
if(chr==smallch.charAt(i) || chr==bigch.charAt(i))
return(1);
return(0);
}
function spchar_test(chr)
//數字和特殊字符檢測函數
{
var i;
var spch="_-.0123456789";
for (i=0;i<13;i++)
if(chr==spch.charAt(i))
return(1);
return(0);
}
function email_test(str)
{
var i,flag=0;
var at_symbol=0;
//“@”檢測的位置
var dot_symbol=0;
//“.”檢測的位置
if(char_test(str.charAt(0))==0 )
return (1);
//首字符必須用字母
for (i=1;i<str.length;i++)
if(str.charAt(i)=='@')
{
at_symbol=i;
break;
}
//檢測“@”的位置
if(at_symbol==str.length-1 || at_symbol==0)
return(2);
//沒有郵件服務器域名
if(at_symbol<3)
return(3);
//帳號少於三個字符
if(at_symbol>19 )
return(4);
//帳號多於十九個字符
for(i=1;i<at_symbol;i++)
if(char_test(str.charAt(i))==0 && spchar_test(str.charAt(i))==0)
return (5);
for(i=at_symbol+1;i<str.length;i++)
if(char_test(str.charAt(i))==0 && spchar_test(str.charAt(i))==0)
return (5);
//不能用其它的特殊字符
for(i=at_symbol+1;i<str.length;i++)
if(str.charAt(i)=='.') dot_symbol=i;
for(i=at_symbol+1;i<str.length;i++)
if(dot_symbol==0 || dot_symbol==str.length-1)
//簡單的檢測有沒有“.”,以確定服務器名是否合法
return (6);
return (0);
//郵件名合法
}
以上就是JavaScript驗證Email方法,大家學會了嗎?