JavaScript表单验证实例之验证表单项是否为空


Posted in Javascript onJanuary 10, 2016

表单验证几乎在每一个需要注册或者登陆的网站是必不可少的,有些验证则非常的复杂,可以说是各种各样给你的要求,不过本章节只介绍一下表单中最简单的验证方式,就是判断是否为空,有些要求比较低的网站对此已经满足需要了。

代码如下:

<!DOCTYPE html> 
<html> 
<head> 
<meta charset=" utf-8"> 
<meta name="author" content="https://3water.com/" /> 
<title>js简单表单验证</title> 
<script type="text/javascript">
window.onload=function()
{
var bt=document.getElementById("bt");
bt.onclick=function()
{
if(document.myform.name.value=="")
{
alert("用户名不能为空!");
document.myform.name.focus();
return false;
} 
else if(document.myform.pw.value=="")
{
alert("密码不能为空!");
document.myform.pw.focus();
return false; 
}
}
}
</script>
</head>
<body>
<form action="index.php" method="get" name="myform">
<ul>
<li>姓名:<input type="text" name="name" id="name" /></li>
<li>密码:<input type="text" name="pw" id="age" /></li>
<li><input type="submit" id="bt"/></li>
</ul> 
</form>
</body>
</html>

以上代码,当点击提交按钮的时候,能够进行简单的表单验证,如果表单项为空,那么就会弹出提示,并且将焦点放入当前表单项,代码比较简单,这里距不多介绍了,可以参阅相关阅读。

下面在来看下js验证表单实例代码:

gspan.html

<html>
 <head>
 <title>表单验证实例</title>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-" />
 <script src="check.js" type="text/javascript"></script>
 <style>
 span{ font-size:px; }
 .stats{ color : #ccc; }
 .stats{ color :black; }
 .stats{ color :red; }
 .stats{ color :green; }
 </style>
 </head>
 <body>
 <form method="post" action="reg.php" onsubmit="return regs('click')" >
 用户名:<input type="text" name="username" /><span class="stats">用户名不能为空</span><br/>
 邮箱:<input type="text" name="email" /><span class="stats">邮箱不能为空</span><br/>
 密码:<input type="password" name="password" /><span class="stats">密码不能为空</span><br/> 
 确认密码:<input type="password" name="chkpass" /><span class="stats">密码不能为空</span><br/>
 <input type="submit" />
 </form>
 </body>
 </html>

check.js

function gspan(cobj){ //获取表单后的span 标签 显示提示信息
if (cobj.nextSibling.nodeName != 'SPAN'){ 
gspan(cobj.nextSibling); 
} else { 
return cobj.nextSibling;
}
} 
//检查表单 obj【表单对象】, info【提示信息】 fun【处理函数】 click 【是否需要单击, 提交时候需要触发】 
function check(obj, info, fun, click){ 
var sp = gspan(obj); 
obj.onfocus = function(){ 
sp.innerHTML = info; 
sp.className = 'stats';
}
obj.onblur = function(){
if (fun(this.value)){
sp.innerHTML = "输入正确!";
sp.className = "stats";
} else {
sp.innerHTML = info;
sp.className = "stats";
}
}
if (click == 'click'){
obj.onblur();
}
}
onload = regs; //页面载入完执行
function regs(click){
var stat = true; //返回状态, 提交数据时用到
username = document.getElementsByName('username')[];
password = document.getElementsByName('password')[];
chkpass = document.getElementsByName('chkpass')[];
email = document.getElementsByName('email')[];
check(username, "用户名的长度在-之间", function(val){
if (val.match(/^\S+$/) && val.length >= && val.length <=){
return true;
} else {
stat = false;
return false;
}
}, click);
check(password, "密码必须在-位之间", function(val){
if (val.match(/^\S+$/) && val.length >= && val.length <=){
return true;
} else {
stat = false;
return false;
}
}, click);
check(chkpass, "确定密码要和上面一致,规则也要相同", function(val){
if (val.match(/^\S+$/) && val.length >= && val.length <= && val == password.value){
return true;
} else {
stat = false;
return false;
}
}, click);
check(email, "请按邮箱规则输入", function(val){
if (val.match(/\w+@\w+\.\w/)){
return true;
} else {
stat = false;
return false;
}
}, click);
return stat;
}
Javascript 相关文章推荐
javascript加号&quot;+&quot;的二义性说明
Mar 04 Javascript
完美解决AJAX跨域问题
Nov 01 Javascript
JS去除字符串两端空格的简单实例
Dec 27 Javascript
JS中操作JSON总结
Dec 06 Javascript
window.open()详解及浏览器兼容性问题示例探讨
May 29 Javascript
浅谈js中变量初始化
Feb 03 Javascript
Angular2 路由问题修复详解
Mar 01 Javascript
JavaScript实现打地鼠小游戏
Apr 23 Javascript
详解Vue 开发模式下跨域问题
Jun 06 Javascript
浅谈node中的cluster集群
Jun 02 Javascript
vue通过数据过滤实现表格合并
Nov 30 Javascript
如何开发一个渐进式Web应用程序PWA
May 10 Javascript
JavaScript电子时钟倒计时第二款
Jan 10 #Javascript
基于javascript实现彩票随机数生成(简单版)
Apr 17 #Javascript
Node.js静态文件服务器改进版
Jan 10 #Javascript
实例讲解javascript注册事件处理函数
Jan 09 #Javascript
详解javascript事件冒泡
Jan 09 #Javascript
js父页面中使用子页面的方法
Jan 09 #Javascript
jquery调整表格行tr上下顺序实例讲解
Jan 09 #Javascript
You might like
PHP+AJAX实现无刷新注册(带用户名实时检测)
2006/12/02 PHP
rephactor 优秀的PHP的重构工具
2011/06/09 PHP
Laravel中使用阿里云OSS Composer包分享
2015/02/10 PHP
Yii2 批量插入、更新数据实例
2017/03/15 PHP
PHP PDO和消息队列的个人理解与应用实例分析
2019/11/25 PHP
Javascript实例教程(19) 使用HoTMetal(2)
2006/12/23 Javascript
js函数使用技巧之 setTimeout(function(){},0)
2009/02/09 Javascript
Jquery AutoComplete自动完成 的使用方法实例
2010/03/19 Javascript
改变javascript函数内部this指针指向的三种方法
2010/04/23 Javascript
从零开始学习jQuery (六) jquery中的AJAX使用
2011/02/23 Javascript
jquery Ajax 实现加载数据前动画效果的示例代码
2014/02/07 Javascript
jQuery实现鼠标滑向当前图片高亮显示并且其它图片变灰的方法
2015/07/27 Javascript
内容滑动切换效果jquery.hwSlide.js插件封装
2016/07/07 Javascript
JS实现的多张图片轮流播放幻灯片效果
2016/07/22 Javascript
js如何获取网页所有图片
2017/05/12 Javascript
详解JS构造函数中this和return
2017/09/16 Javascript
微信小程序getPhoneNumber获取用户手机号
2017/09/29 Javascript
在vue项目中使用sass语法问题
2019/07/18 Javascript
解决谷歌搜索技术文章时打不开网页问题的python脚本
2013/02/10 Python
python+opencv轮廓检测代码解析
2018/01/05 Python
Django基于ORM操作数据库的方法详解
2018/03/27 Python
对python以16进制打印字节数组的方法详解
2019/01/24 Python
Python操作SQLite/MySQL/LMDB数据库的方法
2019/11/07 Python
Python Numpy库常见用法入门教程
2020/01/16 Python
Python页面加载的等待方式总结
2021/02/28 Python
美国马匹用品和马钉购物网站:State Line Tack
2018/08/05 全球购物
Math.round(11.5)等於多少? Math.round(-11.5)等於多少?
2015/01/27 面试题
小学生美德少年事迹
2014/02/02 职场文书
学校联谊活动方案
2014/02/15 职场文书
机电一体化应届生求职信
2014/08/09 职场文书
2014年局领导班子自身建设情况汇报
2014/11/21 职场文书
结婚保证书(三从四德)
2015/02/26 职场文书
公司车辆管理制度
2015/08/04 职场文书
股东协议书范本2016
2016/03/21 职场文书
聊聊golang中多个defer的执行顺序
2021/05/08 Golang
Go gorilla securecookie库的安装使用详解
2022/08/14 Golang