表单如下 要真正做到先验证输入不为空,然后再提交RegisterServlet<form action="RegisterServlet" method="post" >
<p>用户名:<input type="text" name="user_name"></p>
<p>密码:<input type="password" name="usr_psw"></p>
<p>确认密码:<input type="password" name="confirmedpwd"></p>
<p>Email:<input type="text" name="user_email"></p>
<input type="submit" value="提交注册"/>
<input type="reset" value="重置"/>
</form>
};>
var pass = document.frm.usr_psw.value;
var rePass = document.frm.confirmedpwd.value;
var email = document.frm.user_email;if(name.length > 10 || name.length < 4){
alert("用户名长度必须大于等于4,小于等于10");
frm.userName.focus();
return false;
}
else if(pass.length < 1){
alert("请输入密码");
frm.userPassword.focus();
return false;
}else if(pass != rePass){
alert("两次密码输入不相符合!");
frm.confirmedpwd.focus();
return false;
}
else if(email == ''){
alert("请输入邮件地址!");
frm.user_email.focus();
return false;
} return true;
}
</script>
<p>用户名:<input type="text" name="user_name"></p>
<p>密码:<input type="password" name="usr_psw"></p>
<p>确认密码:<input type="password" name="confirmedpwd"></p>
<p>Email:<input type="text" name="user_email"></p>
<input type="submit" value="提交注册"/>
<input type="reset" value="重置"/>
</form>
<script language = "javascript">function subTest(){var name = document.frm.user_name.value;
var pass = document.frm.usr_psw.value;
var rePass = document.frm.confirmedpwd.value;
var email = document.frm.user_email;if(name.length > 10 || name.length < 4){
alert("用户名长度必须大于等于4,小于等于10");
frm.userName.focus();
return false;
}
else if(pass.length < 1){
alert("请输入密码");
frm.userPassword.focus();
return false;
}else if(pass != rePass){
alert("两次密码输入不相符合!");
frm.confirmedpwd.focus();
return false;
}
else if(email == ''){
alert("请输入邮件地址!");
frm.user_email.focus();
return false;
} return true;
}
<form action="RegisterServlet" method="post" id="frm" name="frm" onsubmit="return subTest()" >
<p>用户名:<input type="text" name="userName"></p>
<p>密码:<input type="password" name="userPassword"></p>
<p>确认密码:<input type="password" name="confirmedpwd"></p>
<p>Email:<input type="text" name="user_email"></p>
<input type="submit" value="提交注册"/>
<input type="reset" value="重置"/>
</form>
<script language = "javascript">function subTest(){var name = document.frm.userName.value;
var pass = document.frm.userPassword.value;
var rePass = document.frm.confirmedpwd.value;
var email = document.frm.user_email;
var frm=document.frm;
if(name.length > 10 || name.length < 4){
alert("用户名长度必须大于等于4,小于等于10");
frm.userName.focus();
return false;
}
else if(pass.length < 1){
alert("请输入密码");
frm.userPassword.focus();
return false;
}else if(pass != rePass){
alert("两次密码输入不相符合!");
frm.confirmedpwd.focus();
return false;
}
else if(email == ''){
alert("请输入邮件地址!");
frm.user_email.focus();
return false;
} return true;
}
</script>
<script>
function checkForm(form) {
// check your form fields
// if valid, return true,
// otherwise, return false
return true;
}
function beforeSumbit(evt, form) {
evt = evt || window.event;
if(!checkForm(form)) {
if(evt.preventDefault) {
evt.preventDefault();
} else {
evt.returnValue = false;
}
}
}
</script>
<form action="RegisterServlet" method="post" onsubmit="beforeSumbit(event, this);">
<!-- ... -->
</form>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<script language = "javascript">function subTest()
{
var name = document.getElementById("frm").userName.value;
var pass = document.getElementById("frm").userPassword.value;
var rePass = document.getElementById("frm").confirmedpwd.value;
var email = document.getElementById("frm").user_email.value;if(name.length > 10 || name.length < 4){
alert("用户名长度必须大于等于4,小于等于10");
frm.userName.focus();
return false;
}
else if(pass.length < 1){
alert("请输入密码");
frm.userPassword.focus();
return false;
}else if(pass != rePass){
alert("两次密码输入不相符合!");
frm.confirmedpwd.focus();
return false;
}
else if(email == ''){
alert("请输入邮件地址!");
frm.user_email.focus();
return false;
} return true;
}
</script>
<body>
<form action="RegisterServlet" method="post" id="frm" name="frm" onsubmit="return subTest()" >
<p>用户名:<input type="text" name="userName"></p>
<p>密码:<input type="password" name="userPassword"></p>
<p>确认密码:<input type="password" name="confirmedpwd"></p>
<p>Email:<input type="text" name="user_email"></p>
<input type="submit" value="提交注册"/>
<input type="reset" value="重置"/>
</form></body>
</html>你的subTest函数出错了,可以对照我的来看看