JavaScript表单验证实现代码


Posted in Javascript onMay 22, 2017

JavaScript 可用来在数据被送往服务器前对 HTML 表单中的这些输入数据进行验证

JavaScript 表单验证

JavaScript 可用来在数据被送往服务器前对 HTML 表单中的这些输入数据进行验证。
被 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 相关文章推荐
JQuery select控件的相关操作实现代码
Sep 14 Javascript
javascript函数定义的几种区别小结
Jan 06 Javascript
jquery制作居中遮罩层效果分享
Feb 21 Javascript
node.js中的socket.io入门实例
Apr 26 Javascript
jQuery的text()方法用法分析
Dec 20 Javascript
bootstrap学习笔记之初识bootstrap
Jun 21 Javascript
最常见的左侧分类菜单栏jQuery实现代码
Nov 28 Javascript
原生js实现放大镜
Feb 20 Javascript
js实现登录框鼠标拖拽效果
Mar 09 Javascript
webpack+vue+express(hot)热启动调试简单配置方法
Sep 19 Javascript
javaScript实现一个队列的方法
Jul 14 Javascript
vue中解决chrome浏览器自动播放音频和MP3语音打包到线上的实现方法
Oct 09 Javascript
JQuery 封装 Ajax 常用方法(推荐)
May 21 #jQuery
原生JS实现N级菜单的代码
May 21 #Javascript
Ionic + Angular.js实现图片轮播的方法示例
May 21 #Javascript
详解Angular2中Input和Output用法及示例
May 21 #Javascript
Angular2中如何使用ngx-translate进行国际化
May 21 #Javascript
详解angularjs利用ui-route异步加载组件
May 21 #Javascript
如何在AngularJs中调用第三方插件库
May 21 #Javascript
You might like
造就帕卡马拉的帕卡斯是怎么被发现的
2021/03/03 咖啡文化
PHP自定义函数收代码
2010/08/01 PHP
php实现批量压缩图片文件大小的脚本
2014/07/04 PHP
php中__toString()方法用法示例
2016/12/07 PHP
PHP基于XMLWriter操作xml的方法分析
2017/07/17 PHP
Laravel实现短信注册的示例代码
2018/05/29 PHP
用javascript为页面添加天气显示实现思路及代码
2013/12/02 Javascript
node+express+jade制作简单网站指南
2014/11/26 Javascript
node.js中的fs.readdir方法使用说明
2014/12/17 Javascript
对JavaScript中this指针的新理解分享
2015/01/31 Javascript
原生js制作日历控件实例分享
2016/04/06 Javascript
使用JQuery 加载页面时调用JS的实现方法
2016/05/30 Javascript
JS生成不重复的随机数组的简单实例
2016/07/10 Javascript
JavaScript该如何学习 怎样轻松学习JavaScript
2017/06/12 Javascript
基于jquery实现九宫格拼图小游戏
2018/11/30 jQuery
js+canvas实现两张图片合并成一张图片的方法
2019/11/01 Javascript
[01:21]DOTA2新纪元-7.0新版本即将开启!
2016/12/11 DOTA
[48:35]2018DOTA2亚洲邀请赛 4.1 小组赛 A组加赛 TNC vs Optic
2018/04/03 DOTA
Python文件读取的3种方法及路径转义
2015/06/21 Python
Python的Flask框架中配置多个子域名的方法讲解
2016/06/07 Python
Python列表和元组的定义与使用操作示例
2017/07/26 Python
Python实现的查询mysql数据库并通过邮件发送信息功能
2018/05/17 Python
python enumerate内置函数用法总结
2020/01/07 Python
解析pip安装第三方库但PyCharm中却无法识别的问题及PyCharm安装第三方库的方法教程
2020/03/10 Python
巴基斯坦购物网站:Goto
2019/03/11 全球购物
用你熟悉的语言写一个连接ORACLE数据库的程序,能够完成修改和查询工作
2012/06/11 面试题
什么是.net
2015/08/03 面试题
大二学生学习个人自我评价
2014/01/19 职场文书
公司开业庆典主持词
2014/03/21 职场文书
公司经理任命书
2014/06/05 职场文书
管理工程专业求职信
2014/08/10 职场文书
2014年党员自我评价材料
2014/09/22 职场文书
80后婚前协议书范本
2014/10/24 职场文书
升职自荐信怎么写
2015/03/05 职场文书
2019学生会干事辞职信
2019/06/27 职场文书
解决thinkphp6(tp6)在状态码500下不报错,或者显示错误“Malformed UTF-8 characters”的问题
2021/04/01 PHP