HTML页面登录时的JS验证方法


Posted in Javascript onMay 28, 2014

开发一个注册的HTML页面, 用于搜集用户的注册信息。包括: 姓名(不能为空), 年龄(必须超过17岁), 体重(30-150kg), 班级(下拉列表),登陆密码(至少8位长)、确认密码(和登录密码一致),Email(不能为空) , 电话,QQ, 个人简历等信息。 并针对这些表的元素来创建相应的验证,如果检测到错误, 在输入框后面用红色的字显示错误。要用到前面几节学习过的单行文本输入框text、下拉列表框select、密码输入框password、多行文本输入框textarea。这是一个较实用的用户注册表单.。

register.html:

<!doctype html> 
<html> 
<head> 
<meta charset="utf-8"> 
<title>实验2</title> 
<link href="check.css" rel="stylesheet" type="text/css"> 
<script type="text/javascript" src="load.js"> 
</script> 
</head> 
<!--return validate()和validate()在于是否清空表单--> 
<body onload="load_greeting()"> 
<form id="test" align="left" onSubmit="return validate()"> 
<table> 
<tr> 
<td>Name*:</td> 
<td><input type="text" name="Name" id="name" size="20" onChange='check("name")'></td> 
<td id="nameCheck" class="check" hidden="true">*姓名不能为空</td> 
</tr> 
<tr> 
<td>Age:</td> 
<td><input type="text" name="Age" id="age" size="20" onChange='check("age")'></td> 
<td id="ageCheck" class="check" hidden="true">*年龄不能小于17岁</td> 
</tr> 
<tr > 
<td>weight:</td> 
<td><input type="text" name="weight" id="weight" size="20" onChange='check("weight")'></td> 
<td id="weightCheck" class="check" hidden="true">*体重范围为30~150KG</td> 
</tr> 
<tr> 
<td>Class:</td> 
<td><select id="class" name="class"> 
<option>class0</option> 
<option>class1</option> 
<option>class2</option> 
<option>class3</option> 
</select> 
</td> 
</tr> 
<tr> 
<td>Password*:</td> 
<td><input type="password" name="Password" id="password" size="20" onChange='check("password")'></td> 
<td id="passwordCheck" class="check" hidden="true">*password length less than 8</td> 
</tr> 
<tr> 
<td>Confirm Password*:</td> 
<td><input type="password" name="cpassword" id="cpassword" size="20" onChange='check("cpassword")'></td> 
<td id="cpasswordCheck" class="check" hidden="true">*Two passwd is not same</td> 
</tr> 
<tr > 
<td>Email*:</td> 
<td><input type="email" name="email" id="email" size="20" onChange='check(this.id)'></td> 
<td id="emailCheck" class="check" hidden="true">*电子邮件名非法!</td> 
</tr> 
<tr> 
<td>TEL:</td> 
<td><input type="text" name="TEL" id="TEL" size="20"></td> 
</tr> 
<tr> 
<td>QQ:</td> 
<td><input type="text" name="QQ" id="QQ" size="20"></td> 
</tr> 
<tr> 
<td>Personal Information:</td> 
<td><textarea rows="10" cols="19"></textarea></td> 
</tr> 
<tr> 
<td colspan="3"> 
<input type="submit" name="submit"> 
<input type="reset" name="reset"> 
</td> 
</tr> 
</table> 
</form> 
</body> 
</html>

check.css:
td.check{ 
color:#C00; 
font-weight:bold; 
}

load.js:
function check(str) 
{ 
var x = document.getElementById(str); 
var y = document.getElementById(str+"Check"); 
//alert("check!"); 
if(str=="name") 
{ 
if(x.value=="") 
y.hidden = false; 
else 
y.hidden = true; 
} 
else if(str=="age") 
{ 
if(isNaN(x.value) || x.value < 17) 
y.hidden = false; 
else 
y.hidden = true; 
} 
else if(str=="weight") 
{ 
x = x.value; 
if(isNaN(x) || x < 30 || x > 150) 
y.hidden = false; 
else 
y.hidden = true; 
} 
else if(str=="password") 
{ 
x = x.value.length; 
if(x < 8) 
{ 
y.hidden = false; 
//alert("check!"); 
} 
else 
y.hidden = true; 
} 
else if(str=="cpassword") 
{ 
var z = document.getElementById("password").value; 
x = x.value; 
if(x != z) 
y.hidden = false; 
else 
y.hidden = true; 
} 
else if(str=="email") 
{ 
x = x.value.indexOf("@") 
if(x == -1) 
y.hidden = false; 
else 
y.hidden = true; 
} 
return y.hidden; 
} function validate() 
{ 
var arr=["name", "age", "weight", "password", "cpassword", "email"]; 
var i = 0; 
submitOK = true; 
while(i <= 5) 
{ 
if(!check(arr[i])) 
{ 
alert(arr[i]+" wrong!"); 
submitOK = false; 
break; 
} 
i++; 
} 
if(submitOK) 
{ 
alert("提交成功!"); 
return true; 
} 
else 
{ 
alert("提交失败"); 
return false; 
} 
} 
function load_greeting() 
{ 
//alert("visit \n"); 
}
Javascript 相关文章推荐
HTML DOM的nodeType值介绍
Mar 31 Javascript
2014最热门的JavaScript代码高亮插件推荐
Nov 25 Javascript
基于jquery实现放大镜效果
Aug 17 Javascript
浅析JavaScript中命名空间namespace模式
Jun 22 Javascript
JS实现淡入淡出图片效果的方法分析
Dec 20 Javascript
javascript深拷贝和浅拷贝详解
Feb 14 Javascript
Angular HMR(热模块替换)功能实现方法
Apr 04 Javascript
解决vue attr取不到属性值的问题
Sep 18 Javascript
详解vue中router-link标签所必备了解的属性
Apr 15 Javascript
JavaScript一元正号运算符示例代码
Jun 30 Javascript
区分vue-router的hash和history模式
Oct 03 Javascript
5个实用的JavaScript新特性
Jun 16 Javascript
22点关于jquery性能优化的建议
May 28 #Javascript
一个奇葩的最短的 IE 版本判断JS脚本
May 28 #Javascript
JS中使用Array函数shift和pop创建可忽略参数的例子
May 28 #Javascript
现代 JavaScript 开发编程风格Idiomatic.js指南中文版
May 28 #Javascript
node.js Web应用框架Express入门指南
May 28 #Javascript
用html5 js实现点击一个按钮达到浏览器全屏效果
May 28 #Javascript
浅析JavaScript基本类型与引用类型
May 28 #Javascript
You might like
丧钟首部独立剧集《丧钟:骑士与龙》北美正式开播,场面血腥
2020/04/09 欧美动漫
php注入实例
2006/10/09 PHP
浅析php面向对象public private protected 访问修饰符
2013/06/30 PHP
JavaScript进阶教程(第四课第一部分)
2007/04/05 Javascript
js函数使用技巧之 setTimeout(function(){},0)
2009/02/09 Javascript
基于jquery的合并table相同单元格的插件(精简版)
2011/04/05 Javascript
读jQuery之五(取DOM元素)
2011/06/20 Javascript
iframe 上下滚动条如何默认在下方实现原理
2012/12/10 Javascript
jQuery向后台传入json格式数据的方法
2015/02/13 Javascript
js实现模拟银行卡账号输入显示效果
2015/11/18 Javascript
jQuery添加和删除指定标签的方法
2015/12/16 Javascript
JavaScript知识点总结(十)之this关键字
2016/05/31 Javascript
使用Bootstrap typeahead插件实现搜索框自动补全的方法
2016/07/07 Javascript
用 js 的 selection range 操作选择区域内容和图片
2017/04/18 Javascript
详解Vue 方法与事件处理器
2017/06/20 Javascript
使用jquery的jsonp如何发起跨域请求及其原理详解
2017/08/17 jQuery
手把手教你使用vue-cli脚手架(图文解析)
2017/11/08 Javascript
基于JS实现带动画效果的流程进度条
2018/06/01 Javascript
详解webpack运行Babel教程
2018/06/13 Javascript
jQuery操作cookie的示例代码
2019/06/05 jQuery
vue中全局路由守卫中替代this操作(this.$store/this.$vux)
2020/07/24 Javascript
Javascript类型判断相关例题及解析
2020/08/26 Javascript
详解React路由传参方法汇总记录
2020/11/29 Javascript
KMP算法精解及其Python版的代码示例
2016/06/01 Python
批量将ppt转换为pdf的Python代码 只要27行!
2018/02/26 Python
python和shell获取文本内容的方法
2018/06/05 Python
python 读取dicom文件,生成info.txt和raw文件的方法
2019/01/24 Python
OpenCV python sklearn随机超参数搜索的实现
2020/01/17 Python
IDLE下Python文件编辑和运行操作
2020/04/25 Python
美的官方商城:Midea
2016/09/14 全球购物
DJI大疆德国官方商城:大疆无人机
2018/09/01 全球购物
乌克兰巴士票购买网站:inBus
2021/03/12 全球购物
什么是托管函数?托管函数有什么用?
2014/06/15 面试题
财务管理专业自荐信范文
2013/12/24 职场文书
咖啡店的创业计划书,让你hold不住
2014/01/03 职场文书
生日庆典策划方案
2014/06/02 职场文书