//index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<a href="register.html">用户注册</a><br>
</body>
</html>
//register.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>用户注册</title>
<style type="text/css">
@import "css/userRegister.css";
</style>
</head>
<body id="BODY" οnlοad="pageLoad()">
<div id="DIV_FORM">
<form method="post" action="registerSuccess.jsp" >
<table id="TABLE" >
<tbody>
<tr>
<td>用户名:</td>
<td>
<input name="username" class="cls_inpt" type="text" id="USERNAME" οnfοcus="showDesc(this)"
οnblur="isNull(this);setBackground(this);" οnkeyup="checkText(this,event)" οnclick="active(this)"/>
</td>
</tr>
<tr>
<td>密码:</td>
<td>
<input name="password" class="cls_inpt" id="PASSWORD" type="password" οnfοcus="showDesc(this)"
οnblur="isNull(this);setBackground(this);" οnkeyup="checkText(this,event)" οnclick="active(this)" maxlength="20"/>
</td>
</tr>
<tr>
<td>确认密码:</td>
<td>
<input name="password2" type="password" class="cls_inpt" id="PASSWORD2" οnfοcus="showDesc(this)" disabled="disabled"
οnblur="isNull(this);setBackground(this);" οnkeyup="checkText(this,event)" οnclick="active(this)" maxlength="20"/>
</td>
</tr>
<tr>
<td>身份证号:</td>
<td>
<input name="IDNumber" type="text" class="cls_inpt"id="IDNUMBER" οnfοcus="showDesc(this)"
οnblur="isNull(this);setBackground(this);" οnkeyup="checkText(this,event)" οnclick="active(this)" maxlength="19"/>
</td>
</tr>
<tr>
<td>电话号码:</td>
<td>
<input name="phoneNumber" type="text" class="cls_inpt" id="PHONENUMBER" οnfοcus="showDesc(this)"
οnblur="isNull(this);setBackground(this);" οnkeyup="checkText(this,event)" οnclick="active(this)" maxlength="20"/>
</td>
</tr>
<tr>
<td>Email:</td>
<td>
<input name="email" class="cls_inpt" id="EMAIL" type="text" οnfοcus="showDesc(this)" οnblur="isNull(this);setBackground(this)"
οnkeyup="checkText(this,event)" οnclick="active(this)"/>
</td>
</tr>
<tr>
<td> </td>
<td align="right">
<input id="SUBMIT" type="submit" value="确认提交" disabled="disabled" οnmοuseοver="lastCheck()"/>
</td>
</tr>
</tbody>
</table>
<table id="TABLE2" border="0">
<tr><td><span id="username" active="0">请输入用户名</span></td></tr>
<tr><td><span id="password" active="0">请输入密码</span></td></tr>
<tr><td><span id="password2" active="0">请再次输入密码</span></td></tr>
<tr><td><span id="IDNumber" active="0">请输入身份证号码</span></td></tr>
<tr><td><span id="phoneNumber" active="0">请输入电话号码</span></td></tr>
<tr><td><span id="email" active="0">请输入邮箱地址</span></td></tr>
</table>
</form>
</div>
<script type="text/javascript" src="jslib/registerCheck.js">
</script>
</body>
</html>
//registerCheck.js
// JavaScript Document
//
//在页面加载时初始化页面必要信息
function pageLoad()
{
document.getElementById("USERNAME").value="";
document.getElementById("PASSWORD").value="";
document.getElementById("PASSWORD2").value="";
document.getElementById("PASSWORD2").setAttribute("disabled","disabled");
document.getElementById("IDNUMBER").value="";
document.getElementById("PHONENUMBER").value="";
document.getElementById("EMAIL").value="";
document.getElementById("username").setAttribute("active", "0");
document.getElementById("password").setAttribute("active", "0");
document.getElementById("password2").setAttribute("active", "0");
document.getElementById("IDNumber").setAttribute("active", "0");
document.getElementById("phoneNumber").setAttribute("active", "0");
document.getElementById("email").setAttribute("active", "0");
}
//输入框获得焦点时,显示提示内容
function showDesc(obj)
{
var id= obj.name;
document.getElementById(id).style.display="inline";
}
//判断输入框内容是否为空
function isNull(obj)
{
//获取输入内容
var id= obj.name;
var text=document.getElementById(id.toString().toUpperCase()).value;
//判断是否为空
if(text.replace(/\s/g, "")=="")
{
var id_span=document.getElementById(id);
id_span.innerHTML="* 输入不能为空";
id_span.style.color="#F00";
id_span.setAttribute("active","0");
return true;
}
}
//输入时检验输入内容是否有效
function checkText(obj,e)
{
//如果输入的是退格键,判断下内容是否为空
if(8==e.which&&isNull(obj))
{
isSuccess();
return;
}
//输入框的name属性名与span 标签id 名一致
var id= obj.name;
//组装方法
//取首字母转换为大写,其余不变
var firstChar=id.charAt(0).toString().toUpperCase();
//
var strsub=id.substring(1,id.length);
var strMethod="check"+firstChar+strsub+"()";
var isTrue = eval(strMethod);
//判断输入数据是否有效
if(isTrue)
{
var id_span=document.getElementById(id);
id_span.innerHTML="输入有效";
id_span.style.color="#060";
id_span.setAttribute("active","1");
//判断注册信息是否全部有效
isSuccess();
}
}
function checkUsername()
{
//只简单的判断用户名的长度
var id = document.getElementById("USERNAME");
var username=id.value;
if(username.length > 10)
{
var id_span=document.getElementById(id.name);
id_span.innerHTML = "*输入的用户名过长";
id_span.style.color="#F00";
id_span.setAttribute("active","0");
return false;
}
else
return true;
}
function checkPassword()
{
var password = document.getElementById("PASSWORD").value;
//当在password输入时,password2先清空
document.getElementById("PASSWORD2").value="";
document.getElementById("PASSWORD2").removeAttribute("disabled");
return true;
}
function checkPassword2()
{
var id=document.getElementById("PASSWORD");
var id2=document.getElementById("PASSWORD2");
var password = id.value;
var password2 = id2.value;
if(password!=password2)
{
var id_span=document.getElementById(id2.name);
id_span.innerHTML="* 密码不一致";
id_span.style.color="#F00";
id_span.setAttribute("active","0");
return false;
}
return true;
}
function checkIDNumber()
{
var id=document.getElementById("IDNUMBER");
var IDNumber =id.value;
if(IDNumber.length<18||IDNumber.length>19)
{
var id_span=document.getElementById(id.name);
id_span.innerHTML="* 身份证号长度有误";
id_span.style.color="#F00";
id_span.setAttribute("active","0");
return false;
}
var expr=/([0]{18}[x|y]?)|([1]{18}[x|y]?)/i;
//检验前18位是否有非数字字符
var expr2=/\D/i;
var subID=IDNumber.substring(0,IDNumber.length);
//输入到第18位时检验是否存在非数字字符
if(expr2.test(subID)&&IDNumber.length==18)
{
var id_span=document.getElementById(id.name);
id_span.innerHTML="* 身份证号前18不可以为非数字字符";
id_span.style.color="#F00";
id_span.setAttribute("active","0");
return false;
}
else
{
//如果存在19位检测第19位是否是x或y
if(IDNumber.length==19)
{
if(IDNumber.charAt(IDNumber.length-1)!="x"&&IDNumber.charAt(IDNumber.length-1)!="y")
{
var id_span=document.getElementById(id.name);
id_span.innerHTML="* 身份证号长度有误";
id_span.style.color="#F00";
id_span.setAttribute("active","0");
return false;
}
}
}
//
if(expr.test(IDNumber))
{
var id_span=document.getElementById(id.name);
id_span.innerHTML="* 身份证号不可以全'0'或全'1'";
id_span.style.color="#F00";
id_span.setAttribute("active","0");
return false;
}
return true;
}
function checkPhoneNumber()
{
// 利用正则表达式对输入数据匹配
var id=document.getElementById("PHONENUMBER");
var id_span=document.getElementById(id.name);
var phone = id.value;
if(phone.length>20)
{
id_span.innerHTML="* 电话号码太长";
id_span.style.color="#F00";
id_span.setAttribute("active","0");
return false;
}
//匹配到一个非数字字符,则返回false
var expr = /\D/i;
if(expr.test(phone))
{
id_span.innerHTML="* 不能输入非数字字符";
id_span.style.color="#F00";
id_span.setAttribute("active","0");
return false;
}
return true;
}
function checkEmail()
{
// 利用正则表达式对输入数据匹配
var id = document.getElementById("EMAIL");
var email = id.value;
//以字母或数字开头,跟上@,字母数字以.com结尾
var expr = /^([0-9]|[a-z])+@([0-9]|[a-z])+(\.[c][o][m])$/i;
if(!expr.test(email))
{
var id_span=document.getElementById(id.name);
id_span.innerHTML="* 输入的邮箱格式有误";
id_span.style.color="#F00";
id_span.setAttribute("active","0");
return false;
}
return true;
}
//点击输入框时激活该输入框
function active(obj)
{
var id=document.getElementById(obj.id);
id.style.backgroundColor="#FFF";
}
function lastCheck()
{
//判断注册信息是否全部有效
if(isSuccess())
{
document.getElementById("SUBMIT").removeAttribute("disabled");
}
else
{
document.getElementById("SUBMIT").setAttribute("disabled","disabled");
}
}
//判断注册信息是否全部有效
function isSuccess()
{
var username=document.getElementById("username").getAttribute("active");
var password2=document.getElementById("password2").getAttribute("active");
var IDNumber=document.getElementById("IDNumber").getAttribute("active");
var phoneNumber=document.getElementById("phoneNumber").getAttribute("active");
var email=document.getElementById("email").getAttribute("active");
if(username==0|password2==0|IDNumber==0|phoneNumber==0|email==0)
{
//禁止注册
document.getElementById("SUBMIT").setAttribute("disabled","disabled");
return false;
}
else
{
//允许注册
document.getElementById("SUBMIT").removeAttribute("disabled");
return true;
}
}
//当失去焦点时设置背景
function setBackground(obj)
{
var id=obj.name;
document.getElementById(id.toString().toUpperCase()).style.backgroundColor="#EEE";
}
//registerSuccess.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<%
String username=request.getParameter("username");
String password=request.getParameter("password");
String IDNumber=request.getParameter("IDNumber");
String phoneNumber=request.getParameter("phoneNumber");
String email=request.getParameter("email");
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>registerSuccess</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="css/userRegister.css">
-->
</head>
<body>
registerSuccess!!!!!! <br>
<table id="TABLE" >
<tbody>
<tr>
<td>用户名:</td>
<td>
<%=username %>
</td>
</tr>
<tr>
<td>密码:</td>
<td>
<%=password %>
</td>
</tr>
<tr>
<td>身份证号:</td>
<td>
<%= IDNumber%>
</td>
</tr>
<tr>
<td>电话号码:</td>
<td>
<%=phoneNumber %>
</td>
</tr>
<tr>
<td>Email:</td>
<td>
<%=email %>
</td>
</tr>
</tbody>
</table>
<br>
</body>
</html>
//CSS
@charset "utf-8";
/* CSS Document */
#BODY{
text-align:center;
}
#TABLE{
text-align:right;
margin: auto;
float:left;
}
#DIV_FORM{
margin-left:300px;
}
#TABLE2{
text-align:left;
width:290px;
height:240px;
}
#TABLE2 tr
{
height:24px;
}
#TABLE2 span{
display:none;
}
.cls_inpt
{
height:30px;
width:200px;
background-color: #EEE;
border-style: groove;
}
#SUBMIT{
height:50px;
width:90px;
font-family: "微软雅黑", "新宋体";
font-size: 18px;
}
不是很完善,还存在一些问题没处理,360浏览器下发起访问时,js代码不起作用,出不来效果??火狐,谷歌,ie8试过都可正常运行。