JavaScript验证Email(3种方法)


Posted in Javascript onSeptember 21, 2015

今天为大家推荐三种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方法,大家学会了吗?

Javascript 相关文章推荐
10个基于浏览器的JavaScript调试工具分享
Feb 07 Javascript
JavaScript动态添加style节点的方法
Jun 09 Javascript
AngularJS实现全选反选功能
Dec 08 Javascript
Bootstrap和Java分页实例第一篇
Dec 23 Javascript
利用Vue.js框架实现火车票查询系统(附源码)
Feb 27 Javascript
Echarts基本用法_动力节点Java学院整理
Aug 11 Javascript
微信小程序 循环及嵌套循环的使用总结
Sep 26 Javascript
vue better-scroll插件使用详解
Jan 25 Javascript
jQuery中图片展示插件highslide.js的简单dom
Apr 22 jQuery
微信小程序如何再次获取用户授权的方法
May 10 Javascript
微信小程序实现弹出菜单动画
Jun 21 Javascript
Javascript类型判断相关例题及解析
Aug 26 Javascript
基于jQuery实现多层次的手风琴效果附源码
Sep 21 #Javascript
基于insertBefore制作简单的循环插空效果
Sep 21 #Javascript
JS实现适合于后台使用的动画折叠菜单效果
Sep 21 #Javascript
jQuery实现响应鼠标滚动的动感菜单效果
Sep 21 #Javascript
JS+CSS实现简单的二级下拉导航菜单效果
Sep 21 #Javascript
JS实现超简单的仿QQ折叠菜单效果
Sep 21 #Javascript
基于replaceChild制作简单的吞噬特效
Sep 21 #Javascript
You might like
Cappuccino 卡布其诺咖啡之制作
2021/03/03 冲泡冲煮
swfupload 多文件上传实现代码
2008/08/27 PHP
PHP strtotime函数详解
2009/12/18 PHP
前端必学之PHP语法基础
2016/01/01 PHP
phpmyadmin下载、安装、配置教程
2017/05/16 PHP
Yii2.0 RESTful API 基础配置教程详解
2018/12/26 PHP
IE6下CSS图片缓存问题解决方法
2010/12/09 Javascript
jQuery UI的Dialog无法提交问题的解决方法
2011/01/11 Javascript
javascript通过className来获取元素的简单示例代码
2014/01/10 Javascript
基于JavaScript如何实现ajax调用后台定义的方法
2015/12/29 Javascript
第四章之BootStrap表单与图片
2016/04/25 Javascript
JavaScript提升性能的常用技巧总结【经典】
2016/06/20 Javascript
Bootstrap实现登录校验表单(带验证码)
2016/06/23 Javascript
node.js平台下利用cookie实现记住密码登陆(Express+Ejs+Mysql)
2017/04/26 Javascript
mac下的nodejs环境安装的步骤
2017/05/24 NodeJs
vue2.0 computed 计算list循环后累加值的实例
2018/03/07 Javascript
React Router V4使用指南(精讲)
2018/09/17 Javascript
VUE2.0 ElementUI2.0表格el-table自适应高度的实现方法
2018/11/28 Javascript
jquery获取并修改触发事件的DOM元素示例【基于target 属性】
2019/10/10 jQuery
vuecli3.x中轻松4步带你使用tinymce的步骤
2020/06/25 Javascript
详细分析React 表单与事件
2020/07/08 Javascript
解决echarts 一条柱状图显示两个值,类似进度条的问题
2020/07/20 Javascript
vue中axios封装使用的完整教程
2021/03/03 Vue.js
[59:15]EG vs LGD 2018国际邀请赛淘汰赛BO3 第一场 8.26
2018/08/29 DOTA
在Django中创建动态视图的教程
2015/07/15 Python
Django使用Mysql数据库已经存在的数据表方法
2018/05/27 Python
python 通过类中一个方法获取另一个方法变量的实例
2019/01/22 Python
计算机二级python学习教程(1) 教大家如何学习python
2019/05/16 Python
Python3爬虫里关于Splash负载均衡配置详解
2020/07/10 Python
AmazeUI 模态窗口的实现代码
2020/08/18 HTML / CSS
FLOS美国官网:意大利高级照明工艺的传奇
2018/08/07 全球购物
Book Depository欧盟:一家领先的国际图书零售商
2019/05/21 全球购物
工作推荐信范文
2014/05/10 职场文书
停车场管理协议书范本
2014/10/08 职场文书
2014员工聘用协议书(最新版)
2014/11/24 职场文书
python 如何用terminal输入参数
2021/05/25 Python