index.jsp:
<%@ page language="java" contentType="text/html; charset=GBK"%>
<%@taglib prefix="s" uri="/struts-tags"%>
<html>
<head>
<title>请输入您的注册信息</title>
<script language="javascript">
function check()
{
if(document.form1.name.value==""){
alert("用户名不能为空!");
return false;
}
if(document.form1.pass.value==""){
alert("密码不能为空!");
return false;
}
if(document.form1.pass.value.length<6){
alert("密码不能小于六位!");
return false;
}
if(document.form1.rpass.value==""){
alert("确认密码不能为空!");
return false;
}
if(document.form1.pass.value!=document.form1.rpass.value){
alert("密码和确认密码不一致!");
return false;
}
if(document.form1.age.value==""){
alert("年龄不能为空!");
return false;
}
if(document.form1.phone.value==""){
alert("电话不能为空!");
return false;
}
}
</script>
</head>
<body>
<br/><br/><center>
<H1>请输入您的注册信息</H1>
<s:form action="register" name="form1">
<s:textfield label="用户名" name="name"/>
<s:password label="密码" name="pass"/>
<s:password label="确认密码" name="rpass"/>
<s:textfield label="年龄" name="age"/>
<s:textfield label="电话" name="phone"/>
<s:submit value="提交" onclick="return check();"/>
</s:form>
</center>
</body>
</html>
ZhuceAction.java:
package tom.jiafei;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ActionContext;
import java.util.*;
import java.util.regex.*;
import java.text.*;
/**
* @author yeeku.H.lee kongyeeku@163.com
* @version 1.0
* <br>Copyright (C), 2005-2008, yeeku.H.Lee
* <br>This program is protected by copyright laws.
* <br>Program Name:
* <br>Date:
*/
public class ZhuceAction extends ActionSupport
{
private String name;
private String pass;
private String rpass;
private int age;
private String phone;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPass() {
return pass;
}
public void setPass(String pass) {
this.pass = pass;
}
public String getRpass() {
return rpass;
}
public void setRpass(String rpass) {
this.rpass = rpass;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String execute() throws Exception {
return SUCCESS;
}
}
ZhuceAction-validation.xml:
<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//EN"
"http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
<validators>
<field name="name">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>用户名不能为空</message>
</field-validator>
</field>
<field name="pass">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>密码不能为空</message>
</field-validator>
</field>
<field name="rpass">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>确认密码不能为空</message>
</field-validator>
<field-validator type="fieldexpression">
<param name="expression"><![CDATA[(pass==rpass)]]></param>
<message>两次输入密码不一致</message>
</field-validator>
</field>
<field name="age">
<field-validator type="int">
<param name="min">1</param>
<param name="max">100</param>
<message>年龄必须在1-100之间</message>
</field-validator>
</field>
<field name="phone">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>电话不能为空</message>
</field-validator>
<field-validator type="regex">
<param name="expression"><![CDATA[(1\d{10})]]></param>
<message>电话必为11位数字,且必以1开头</message>
</field-validator>
</field>
</validators>