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 相关文章推荐
xmlhttp缓存清除的2种解决方法
Dec 13 Javascript
javascript教程之不完整的继承(js原型链)
Jan 13 Javascript
jQuery中使用animate自定义动画的方法
May 29 Javascript
Vue.js每天必学之方法与事件处理器
Sep 06 Javascript
深入理解JavaScript中的并行处理
Sep 22 Javascript
JQuery和PHP结合实现动态进度条上传显示
Nov 23 Javascript
jQuery控制元素隐藏和显示
Mar 03 Javascript
vue学习之mintui picker选择器实现省市二级联动示例
Oct 12 Javascript
Bootstrap 树控件使用经验分享(图文解说)
Nov 06 Javascript
vue实现与安卓、IOS交互的方法
Nov 02 Javascript
使用JavaScript获取扫码枪扫描得到的条形码的思路代码详解
Jun 10 Javascript
36个正则表达式(开发效率提高80%)
Nov 17 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
PHP发明人谈MVC和网站设计架构 貌似他不支持php用mvc
2011/06/04 PHP
PHP中改变图片的尺寸大小的代码
2011/07/17 PHP
php中3种方法删除字符串中间的空格
2014/03/10 PHP
PHP实现的简单sha1加密功能示例
2017/08/27 PHP
thinkphp中的多表关联查询的实例详解
2017/10/12 PHP
漂亮的thinkphp 跳转页封装示例
2019/10/16 PHP
javascript 日期时间函数(经典+完善+实用)
2009/05/27 Javascript
JavaScript 基础知识 被自己遗忘的
2009/10/15 Javascript
javascript处理table表格的代码
2010/12/06 Javascript
Jquery进度条插件 Progress Bar小问题解决
2011/07/12 Javascript
JavaScript/jQuery 表单美化插件小结
2012/02/14 Javascript
js相册效果代码(点击创建即可)
2013/04/16 Javascript
jquery队列函数用法实例
2014/12/16 Javascript
Angular JS数据的双向绑定详解及实例
2016/12/31 Javascript
微信小程序 缓存(本地缓存、异步缓存、同步缓存)详解
2017/01/17 Javascript
JavaScript基本语法_动力节点Java学院整理
2017/06/26 Javascript
vue小图标favicon不显示的解决方案
2017/09/19 Javascript
Angular实现的进度条功能示例
2018/02/18 Javascript
vue自定义指令实现方法详解
2019/02/11 Javascript
微信小程序 点击切换样式scroll-view实现代码实例
2019/10/11 Javascript
Python调用微信公众平台接口操作示例
2017/07/08 Python
python获取文件路径、文件名、后缀名的实例
2018/04/23 Python
关于django 数据库迁移(migrate)应该知道的一些事
2018/05/27 Python
Python中is和==的区别详解
2018/11/15 Python
python字符串切割:str.split()与re.split()的对比分析
2019/07/16 Python
在Pytorch中计算卷积方法的区别详解(conv2d的区别)
2020/01/03 Python
python3.9和pycharm的安装教程并创建简单项目的步骤
2021/02/03 Python
HTML5实现表单自动验证功能实例代码
2017/01/11 HTML / CSS
Get The Label中文官网:英国运动时尚购物平台
2017/04/19 全球购物
英国领先的电视购物零售商:Ideal World
2019/03/18 全球购物
工商管理专业学生的自我评价
2013/10/01 职场文书
组织关系转移介绍信
2014/01/16 职场文书
探亲假请假条
2014/04/11 职场文书
寒暑假实习证明书模板
2014/11/29 职场文书
2014年减负工作总结
2014/12/10 职场文书
Spring Data JPA框架的核心概念和Repository接口
2022/04/28 Java/Android