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 相关文章推荐
js propertychange和oninput事件
Sep 28 Javascript
使用AngularJS实现可伸缩的页面切换的方法
Jun 19 Javascript
JS实现自动定时切换的简洁网页选项卡效果
Oct 13 Javascript
js传值后台中文出现乱码的解决方法
Jun 30 Javascript
JS碰撞运动实现方法详解
Dec 15 Javascript
ES6学习之变量的解构赋值
Feb 12 Javascript
jq给页面添加覆盖层遮罩的实例
Feb 16 Javascript
详解jQuery中关于Ajax的几个常用的函数
Jul 17 jQuery
利用JS实现scroll自定义滚动效果详解
Oct 17 Javascript
vue 自定义全局方法,在组件里面的使用介绍
Feb 28 Javascript
Vue数据双向绑定原理及简单实现方法
May 18 Javascript
layui自定义验证,用ajax查询后台是否有重复数据,form.verify的例子
Sep 06 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
php数组函数序列 之shuffle()和array_rand() 随机函数使用介绍
2011/10/29 PHP
php使用多个进程同时控制文件读写示例
2014/02/28 PHP
php解析字符串里所有URL地址的方法
2015/04/03 PHP
ThinkPHP路由机制简介
2016/03/23 PHP
php 三元运算符实例详细介绍
2016/12/15 PHP
javascript页面渲染速度测试脚本分享
2014/04/15 Javascript
《JavaScript DOM 编程艺术》读书笔记之DOM基础
2015/01/09 Javascript
jQuery的css() 方法使用指南
2015/05/03 Javascript
javascript中Date对象应用之简易日历实现
2016/07/12 Javascript
基于d3.js实现实时刷新的折线图
2016/08/03 Javascript
JS动态遍历json中所有键值对的方法(不知道属性名的情况)
2016/12/28 Javascript
jquery 判断是否支持Placeholder属性的方法
2017/02/07 Javascript
Java中int与integer的区别(基本数据类型与引用数据类型)
2017/02/19 Javascript
jQuery插件HighCharts绘制的基本折线图效果示例【附demo源码下载】
2017/03/07 Javascript
微信小程序 设置启动页面的两种方法
2017/03/09 Javascript
原生JS实现层叠轮播图
2017/05/17 Javascript
解决vue处理axios post请求传参的问题
2018/03/05 Javascript
深入了解Hybrid App技术的相关知识
2019/07/17 Javascript
Javascript 关于基本类型和引用类型的个人理解
2019/11/01 Javascript
JavaScript 函数用法详解【函数定义、参数、绑定、作用域、闭包等】
2020/05/12 Javascript
Python选课系统开发程序
2016/09/02 Python
python利用urllib实现爬取京东网站商品图片的爬虫实例
2017/08/24 Python
详解Canvas事件绑定
2018/06/27 HTML / CSS
让IE下支持Html5的placeholder属性的插件
2014/09/02 HTML / CSS
Carmen Sol官网:购买果冻鞋、手袋和配件
2021/01/01 全球购物
儿科护理实习自我鉴定
2013/09/19 职场文书
护士自荐信范文
2013/12/15 职场文书
竞选班干部演讲稿300字
2014/08/20 职场文书
工作总结与自我评价
2014/09/18 职场文书
执法作风整顿剖析材料
2014/10/11 职场文书
思想政治表现评语
2015/01/04 职场文书
仓管员岗位职责范本
2015/04/01 职场文书
企业财务总监岗位职责
2015/04/03 职场文书
公司年夜饭通知
2015/04/25 职场文书
工作年限证明范本
2015/06/15 职场文书
Java 超详细讲解十大排序算法面试无忧
2022/04/08 Java/Android