详解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 相关文章推荐
Javascript 的addEventListener()及attachEvent()区别分析
May 21 Javascript
javascript实现简单的html5视频播放器
May 06 Javascript
基于jquery实现select选择框内容左右移动添加删除代码分享
Aug 25 Javascript
jQuery对象的链式操作用法分析
May 10 Javascript
利用pm2部署多个node.js项目的配置教程
Oct 22 Javascript
Vue触发隐藏input file的方法实例详解
Aug 14 Javascript
微信小程序加载机制及运行机制图解
Nov 27 Javascript
JavaScript实现简单计算器
Mar 19 Javascript
JavaScript实现移动端带transition动画的轮播效果
Mar 24 Javascript
vue-router的hooks用法详解
Jun 08 Javascript
js实现数字跳动到指定数字
Aug 25 Javascript
vue+swiper实现左右滑动的测试题功能
Oct 30 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
PHP面向对象程序设计组合模式与装饰模式详解
2016/12/02 PHP
Yii2实现自定义独立验证器的方法
2017/05/05 PHP
thinkphp3.2实现在线留言提交验证码功能
2017/07/19 PHP
javascript代码加载优化方法
2011/01/30 Javascript
获取3个数组不重复的值的具体实现
2013/12/30 Javascript
JQuery中dataGrid设置行的高度示例代码
2014/01/03 Javascript
直接在JS里创建JSON数据然后遍历使用
2014/07/25 Javascript
JavaScript+html5 canvas绘制渐变区域完整实例
2016/01/26 Javascript
jQuery实现的精美平滑二级下拉菜单效果代码
2016/03/28 Javascript
jquery判断类型是不是number类型的实例代码
2016/10/07 Javascript
jquery实现提示语淡入效果
2017/05/05 jQuery
vue.js的手脚架vue-cli项目搭建的步骤
2017/08/30 Javascript
使用typescript开发angular模块并发布npm包
2018/04/19 Javascript
详解vue中使用微信jssdk
2019/04/19 Javascript
Auto.JS实现抖音刷宝等刷视频app,自动点赞,自动滑屏,自动切换视频功能
2020/05/08 Javascript
JavaScript 如何计算文本的行数的实现
2020/09/14 Javascript
[02:52]2014DOTA2西雅图国际邀请赛 CIS战队巡礼
2014/07/07 DOTA
[59:32]Liquid vs Fnatic 2019国际邀请赛淘汰赛败者组BO1 8.20.mp4
2020/07/19 DOTA
python协程用法实例分析
2015/06/04 Python
Python中文竖排显示的方法
2015/07/28 Python
教你用一行Python代码实现并行任务(附代码)
2018/02/02 Python
Python针对给定列表中元素进行翻转操作的方法分析
2018/04/27 Python
pygame游戏之旅 创建游戏窗口界面
2018/11/20 Python
python 获取utc时间转化为本地时间的方法
2018/12/31 Python
Python3批量生成带logo的二维码方法
2019/06/24 Python
python3 selenium自动化测试 强大的CSS定位方法
2019/08/23 Python
python global关键字的用法详解
2019/09/05 Python
termux中matplotlib无法显示中文问题的解决方法
2021/01/11 Python
python利用appium实现手机APP自动化的示例
2021/01/26 Python
深入浅出CSS3 background-clip,background-origin和border-image教程
2011/01/27 HTML / CSS
美国女性运动零售品牌:Lady Foot Locker
2017/05/12 全球购物
Aquatalia官网:意大利著名鞋履品牌
2019/09/26 全球购物
迎接领导欢迎词
2014/01/11 职场文书
交通事故代理词范文
2015/05/23 职场文书
草系十大最强宝可梦,纸片人上榜,榜首大家最熟悉
2022/03/18 日漫
table设置超出部分隐藏,鼠标移上去显示全部内容的方法
2022/12/24 HTML / CSS