JavaScript验证Email(3种方法)

 更新时间:2015年09月21日 12:03:37   投稿:lijiao  
这篇文章主要介绍了JavaScript验证Email的3种方法,需要的朋友可以参考下

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

相关文章

  • JS+CSS制作DIV层可(最小化/拖拽/排序)功能实现代码

    JS+CSS制作DIV层可(最小化/拖拽/排序)功能实现代码

    DIV层最小化和随意拖拽排序,很多的爱好者都想实现这个功能,小编整理搜集了一下,希望本文的知识点可以帮助到你
    2013-02-02
  • Bootstrap基础学习

    Bootstrap基础学习

    Bootstrap是Twitter推出的一个用于前端开发的开源工具包。它由Twitter的设计师Mark Otto和Jacob Thornton合作开发,是一个CSS/HTML框架。它使用了流行的浏览器技术,给web开发提供了时尚的版式,表单,buttons,表格,网格系统等等。
    2015-06-06
  • 基于JS实现带动画效果的流程进度条

    基于JS实现带动画效果的流程进度条

    当在使用流程的时候,比如有一个审核流程,有三个阶段:开始,审核中,审核成功。当在不同的阶段,做相应的进度显示,当显示时,是以动画的形式显示的。下面通过代码给大家介绍JS实现带动画效果的流程进度条,感兴趣的朋友一起看看吧
    2018-06-06
  • JavaScript数组实现数据结构中的队列与堆栈

    JavaScript数组实现数据结构中的队列与堆栈

    这篇文章主要介绍了JavaScript数组实现数据结构中的队列与堆栈的相关资料,需要的朋友可以参考下
    2016-05-05
  • TypeScript装饰器与反射元数据实例详解

    TypeScript装饰器与反射元数据实例详解

    TypeScript的装饰器为我们提供了一种强大的工具,可以在运行时改变类的行为,通过理解装饰器的工作原理,我们可以创造更加强大、灵活且易于维护的应用,这篇文章主要介绍了TypeScript装饰器与反射元数据,需要的朋友可以参考下
    2023-09-09
  • 别了 JavaScript中的isXX系列

    别了 JavaScript中的isXX系列

    我们很容易被漂亮的代码吸引,也不知不觉的在自己的代码库中加入这些。却没有冷静的想过它们的优劣。这不,我就收集了一系列形如 是否为……? 的判断的boolean函数
    2012-08-08
  • ES6小技巧之代替lodash

    ES6小技巧之代替lodash

    这篇文章主要给大家介绍了关于ES6小技巧之代替lodash的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用ES6具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-06-06
  • JavaScript中关于base64的一些事

    JavaScript中关于base64的一些事

    base64 其实是一种编码转换方式, 将 ASCII 字符转换成普通文本, 是网络上最常见的用于传输8Bit字节代码的编码方式之一。这篇文章重点给大家介绍JavaScript中关于base64的一些事,感兴趣的朋友跟随小编一起看看吧
    2019-05-05
  • Worker加载JS脚本跨域问题的几种解决方法

    Worker加载JS脚本跨域问题的几种解决方法

    Web Worker 是一种在后台线程中运行的 JavaScript 脚本,允许我们在不阻塞主线程的情况下执行复杂计算或处理,Worker 加载的 JS 脚本如果存在跨域问题,可能导致脚本无法正常加载和执行,以下是解决 Worker 加载 JS 脚本跨域问题的几种方法,需要的朋友可以参考下
    2025-02-02
  • 深入理解JavaScript系列(15) 函数(Functions)

    深入理解JavaScript系列(15) 函数(Functions)

    本章节我们要着重介绍的是一个非常常见的ECMAScript对象——函数(function),我们将详细讲解一下各种类型的函数是如何影响上下文的变量对象以及每个函数的作用域链都包含什么,以及回答诸如像下面这样的问题:下面声明的函数有什么区别么
    2012-04-04

最新评论