详解JavaScript表单验证(E-mail 验证)


Posted in Javascript onMarch 31, 2016

本文为大家分享了JavaScript表单验证,被 JavaScript 验证的这些典型的表单数据有:
用户是否已填写表单中的必填项目?
用户输入的邮件地址是否合法?
用户是否已输入合法的日期?
用户是否在数据域 (numeric field) 中输入了文本?
必填(或必选)项目
下面的函数用来检查用户是否已填写表单中的必填(或必选)项目。假如必填或必选项为空,那么警告框会弹出,并且函数的返回值为 false,否则函数的返回值则为 true(意味着数据没有问题):

function validate_required(field,alerttxt)
{
with (field)
{
if (value==null||value=="")
 {alert(alerttxt);return false}
else {return true}
}
}

下面是连同 HTML 表单的代码:

<html>
<head>
<script type="text/javascript">

function validate_required(field,alerttxt)
{
with (field)
 {
 if (value==null||value=="")
  {alert(alerttxt);return false}
 else {return true}
 }
}

function validate_form(thisform)
{
with (thisform)
 {
 if (validate_required(email,"Email must be filled out!")==false)
  {email.focus();return false}
 }
}
</script>
</head>

<body>
<form action="submitpage.htm" onsubmit="return validate_form(this)" method="post">
Email: <input type="text" name="email" size="30">
<input type="submit" value="Submit"> 
</form>
</body>

</html>

E-mail 验证
下面的函数检查输入的数据是否符合电子邮件地址的基本语法。
意思就是说,输入的数据必须包含 @ 符号和点号(.)。同时,@ 不可以是邮件地址的首字符,并且 @ 之后需有至少一个点号:

function validate_email(field,alerttxt)
{
with (field)
{
apos=value.indexOf("@")
dotpos=value.lastIndexOf(".")
if (apos<1||dotpos-apos<2) 
 {alert(alerttxt);return false}
else {return true}
}
}

下面是连同 HTML 表单的完整代码:

<html>
<head>
<script type="text/javascript">
function validate_email(field,alerttxt)
{
with (field)
{
apos=value.indexOf("@")
dotpos=value.lastIndexOf(".")
if (apos<1||dotpos-apos<2) 
 {alert(alerttxt);return false}
else {return true}
}
}

function validate_form(thisform)
{
with (thisform)
{
if (validate_email(email,"Not a valid e-mail address!")==false)
 {email.focus();return false}
}
}
</script>
</head>

<body>
<form action="submitpage.htm"onsubmit="return validate_form(this);" method="post">
Email: <input type="text" name="email" size="30">
<input type="submit" value="Submit"> 
</form>
</body>

</html>

以上就是本文的全部内容,希望对大家学习javascript表单验证有所帮助。

Javascript 相关文章推荐
在html页面上拖放移动标签
Jan 08 Javascript
jquery选择器需要注意的问题
Nov 26 Javascript
JavaScript实现向setTimeout执行代码传递参数的方法
Apr 16 Javascript
JavaScript的String字符串对象常用操作总结
May 26 Javascript
jQuery动态修改字体大小的方法【测试可用】
Sep 09 Javascript
javascript实现圣旨卷轴展开效果(代码分享)
Mar 23 Javascript
详解webpack介绍&amp;安装&amp;常用命令
Jun 29 Javascript
Vue2.0 vue-source jsonp 跨域请求
Aug 04 Javascript
从零开始最小实现react服务器渲染详解
Jan 26 Javascript
微信用户访问小程序的登录过程详解
Sep 20 Javascript
解决Echarts2竖直datazoom滑动后显示数据不全的问题
Jul 20 Javascript
使用vant的地域控件追加全部选项
Nov 03 Javascript
js表单验证实例讲解
Mar 31 #Javascript
javascript创建cookie、读取cookie
Mar 31 #Javascript
基于javascript实现全屏漂浮广告
Mar 31 #Javascript
JS深度拷贝Object Array实例分析
Mar 31 #Javascript
如何消除inline-block属性带来的标签间间隙
Mar 31 #Javascript
JavaScript笔记之数据属性和存储器属性
Mar 31 #Javascript
Node.js中Request模块处理HTTP协议请求的基本使用教程
Mar 31 #Javascript
You might like
第十四节 命名空间 [14]
2006/10/09 PHP
基于文本的搜索
2006/10/09 PHP
PHP 获取远程网页内容的代码(fopen,curl已测)
2011/06/06 PHP
解析php中var_dump,var_export,print_r三个函数的区别
2013/06/21 PHP
php实例分享之二维数组排序
2014/05/15 PHP
php设计模式之简单工厂模式详解
2014/09/04 PHP
php将文本文件转换csv输出的方法
2014/12/31 PHP
微信公众号开发之语音消息识别php代码
2016/08/08 PHP
PHP实现的Redis多库选择功能单例类
2017/07/27 PHP
JavaScript Perfection kill 测试及答案
2010/03/23 Javascript
使用dynatrace-ajax跟踪JavaScript的性能
2010/04/12 Javascript
js制作的鼠标悬浮时产生的下拉框效果
2012/10/27 Javascript
js防止DIV布局滚动时闪动的解决方法
2014/10/30 Javascript
jQuery实现仿美橙互联两级导航菜单的方法
2015/03/09 Javascript
JavaScript将一个数组插入到另一个数组的方法
2015/03/19 Javascript
AngularJS入门教程之REST和定制服务详解
2016/08/19 Javascript
JS实现简单的二元方程计算器功能示例
2017/01/03 Javascript
js获取json中key所对应的value值的简单方法
2020/06/17 Javascript
easyUI下拉列表点击事件使用方法
2017/05/18 Javascript
vue快捷键与基础指令详解
2017/06/01 Javascript
Koa2微信公众号开发之本地开发调试环境搭建
2018/05/16 Javascript
Vue 路由 过渡动效 数据获取方法
2018/07/31 Javascript
详解js静态检查工具eslint配置文件
2018/11/23 Javascript
Angular8引入百度Echarts进行图表分析的实现代码
2019/11/27 Javascript
[03:18]DOTA2放量测试专访820:希望玩家加入国服大家庭
2013/08/25 DOTA
Python自然语言处理 NLTK 库用法入门教程【经典】
2018/06/26 Python
对python中return与yield的区别详解
2020/03/12 Python
解决windows上安装tensorflow时报错,“DLL load failed: 找不到指定的模块”的问题
2020/05/20 Python
详解canvas绘图时遇到的跨域问题
2018/03/22 HTML / CSS
人事专员岗位职责
2013/11/20 职场文书
致铅球运动员加油稿
2014/02/13 职场文书
《玩具柜台前的孩子》教学反思
2014/02/13 职场文书
电子信息工程专业求职信
2014/06/28 职场文书
最美孝心少年事迹材料
2014/08/15 职场文书
教师自查自纠工作情况报告
2014/10/29 职场文书
2019年怎样才能撰写出优秀的自荐信
2019/03/25 职场文书