我的注册应用在第一次SUBMIT之前AJAX好用,当验证码错了的时候返回后报错 为什么 求解,如果我问题表述的不够详细还可以问,
<%@ page language="java" import="java.util.*" pageEncoding="utf-8" contentType="text/html;charset=utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<script>
String.prototype.trim=function(){
return this.replace(/^\s*/,"").replace(/\s*$/,"");
};
var subvalidation={"username":false,"password":false};
var xmlreq=false;
function usernameV(){
document.getElementById("user").innerHTML="validating.....";
if(window.XMLHttpRequest){
xmlreq = new XMLHttpRequest();
}else{
try{
xmlreq=new ActiveObject("Msxml2.XMLHTTP");
}catch(e){
xmlreq=new ACtiveObject("Microsoft.XMLHTTP");
}
}
var username=document.getElementById("username").value;
xmlreq.open("get","usernameValidate?dt="+new Date().getTime()+"&username="+username);
xmlreq.onreadystatechange=execute;
xmlreq.send(null);
}
function execute(){
if(xmlreq.readyState==4){
if(xmlreq.status==200){
var returnValue=xmlreq.responseText;
returnValue=returnValue.trim();
if("ok"==returnValue){
subvalidation.username=true;
document.getElementById("user").innerHTML="username can be used";
alert(subvalidation.username);
}else{
subvalidation.username=false;
document.getElementById("user").innerHTML=returnValue;
}
}else{
document.getElementById("user").innerHTML="username validation failed";
subvalidation.username=false;
}
}
}
function submitForm(){
if(subvalidation.username==false){
alert("用户名已经存在");
return false;
}
var username=document.getElementById("username").value;
if(username.length<3||username.length>10){
alert("用户名长度不对");
return false;
}
var reg=/^[0-9a-zA-Z_]*$/;
if(username.match(reg)==null){
alert("用户名字有非法字符");
return false;
}
if(document.forms[0].password.value!=document.forms[0].password1.value){
alert("密码不同");
return false;
}
return true;
}
</script>
</head>
<body>
<form action="regist.do" method="post">
<fieldset>
<legend><br>regist
</legend>
username:<input type="text" id="username"name="username" value="<%=request.getParameter("username")==null?"":request.getParameter("username") %>" onblur="usernameV();"></input><span id="user"></span><br/>
password:<input type="text" name="password" value="<%=request.getParameter("password")==null?"":request.getParameter("password") %>"></input><br/>
password2:<input type="text" name="password2" value="<%=request.getParameter("password")==null?"":request.getParameter("password") %>"></input><br/>
<br/><input type="text" name="validation"><img src="check?dt="+new Date().getTime() id="img"><a href="javascript:;" onclick="document.getElementById('img').src='check?dt='+new Date().getTime()">change</a>
<span><%String code=(String)request.getAttribute("error_code"); %><%=code==null?"":code %></span>
<input type="submit" value="submit" onclick=" return submitForm();">
</fieldset>
</form>
</body>
</html>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8" contentType="text/html;charset=utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<script>
String.prototype.trim=function(){
return this.replace(/^\s*/,"").replace(/\s*$/,"");
};
var subvalidation={"username":false,"password":false};
var xmlreq=false;
function usernameV(){
document.getElementById("user").innerHTML="validating.....";
if(window.XMLHttpRequest){
xmlreq = new XMLHttpRequest();
}else{
try{
xmlreq=new ActiveObject("Msxml2.XMLHTTP");
}catch(e){
xmlreq=new ACtiveObject("Microsoft.XMLHTTP");
}
}
var username=document.getElementById("username").value;
xmlreq.open("get","usernameValidate?dt="+new Date().getTime()+"&username="+username);
xmlreq.onreadystatechange=execute;
xmlreq.send(null);
}
function execute(){
if(xmlreq.readyState==4){
if(xmlreq.status==200){
var returnValue=xmlreq.responseText;
returnValue=returnValue.trim();
if("ok"==returnValue){
subvalidation.username=true;
document.getElementById("user").innerHTML="username can be used";
alert(subvalidation.username);
}else{
subvalidation.username=false;
document.getElementById("user").innerHTML=returnValue;
}
}else{
document.getElementById("user").innerHTML="username validation failed";
subvalidation.username=false;
}
}
}
function submitForm(){
if(subvalidation.username==false){
alert("用户名已经存在");
return false;
}
var username=document.getElementById("username").value;
if(username.length<3||username.length>10){
alert("用户名长度不对");
return false;
}
var reg=/^[0-9a-zA-Z_]*$/;
if(username.match(reg)==null){
alert("用户名字有非法字符");
return false;
}
if(document.forms[0].password.value!=document.forms[0].password1.value){
alert("密码不同");
return false;
}
return true;
}
</script>
</head>
<body>
<form action="regist.do" method="post">
<fieldset>
<legend><br>regist
</legend>
username:<input type="text" id="username"name="username" value="<%=request.getParameter("username")==null?"":request.getParameter("username") %>" onblur="usernameV();"></input><span id="user"></span><br/>
password:<input type="text" name="password" value="<%=request.getParameter("password")==null?"":request.getParameter("password") %>"></input><br/>
password2:<input type="text" name="password2" value="<%=request.getParameter("password")==null?"":request.getParameter("password") %>"></input><br/>
<br/><input type="text" name="validation"><img src="check?dt="+new Date().getTime() id="img"><a href="javascript:;" onclick="document.getElementById('img').src='check?dt='+new Date().getTime()">change</a>
<span><%String code=(String)request.getAttribute("error_code"); %><%=code==null?"":code %></span>
<input type="submit" value="submit" onclick=" return submitForm();">
</fieldset>
</form>
</body>
</html>
解决方案 »
- 【求struts2上传实时进度条】
- 求一个SSH2加泛型的demo
- hql结果集问题
- 请教struts2中页面向action提交List对象的问题
- for(String file : filelist)这个是什么用法??
- 有关J2EE培训的问题
- 关于程序 io 异常: Size Data Unit (SDU) mismatch的错误!!!!
- cms-core:jar:0.0.1-SNAPSHOT is missing, no dependency information available错误
- 问一下J2EE编程时,struct-config.xml是否一定要填东西
- 插入的值对于列过大,这种错误怎么调试?
- filter chain的filter里能根据条件判断决定链的路径吗?
- EL表达式${}嵌套
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<script>
String.prototype.trim=function(){
return this.replace(/^\s*/,"").replace(/\s*$/,"");
};
var subvalidation={"username":false,"password":false};
var xmlreq=false;
function usernameV(){
document.getElementById("user").innerHTML="validating.....";
if(window.XMLHttpRequest){
xmlreq = new XMLHttpRequest();
}else{
try{
xmlreq=new ActiveObject("Msxml2.XMLHTTP");
}catch(e){
xmlreq=new ACtiveObject("Microsoft.XMLHTTP");
}
}
var username=document.getElementById("username").value;
xmlreq.open("get","usernameValidate?dt="+new Date().getTime()+"&username="+username);
xmlreq.onreadystatechange=execute;
xmlreq.send(null);
}
function execute(){
if(xmlreq.readyState==4){
if(xmlreq.status==200){
var returnValue=xmlreq.responseText;
returnValue=returnValue.trim();
if("ok"==returnValue){
subvalidation.username=true;
document.getElementById("user").innerHTML="username can be used";
alert(subvalidation.username);
}else{
subvalidation.username=false;
document.getElementById("user").innerHTML=returnValue;
}
}else{
document.getElementById("user").innerHTML="username validation failed";
subvalidation.username=false;
}
}
}
function submitForm(){
if(subvalidation.username==false){
alert("用户名已经存在");
return false;
}
var username=document.getElementById("username").value;
if(username.length<3||username.length>10){
alert("用户名长度不对");
return false;
}
var reg=/^[0-9a-zA-Z_]*$/;
if(username.match(reg)==null){
alert("用户名字有非法字符");
return false;
}
if(document.forms[0].password.value!=document.forms[0].password1.value){
alert("密码不同");
return false;
}
return true;
}
</script>
</head>
<body>
<form action="regist.do" method="post">
<fieldset>
<legend><br>regist
</legend>
username:<input type="text" id="username"name="username" value="<%=request.getParameter("username")==null?"":request.getParameter("username") %>" onblur="usernameV();"></input><span id="user"></span><br/>
password:<input type="text" name="password" value="<%=request.getParameter("password")==null?"":request.getParameter("password") %>"></input><br/>
password2:<input type="text" name="password2" value="<%=request.getParameter("password")==null?"":request.getParameter("password") %>"></input><br/>
<br/><input type="text" name="validation"><img src="check?dt="+new Date().getTime() id="img"><a href="javascript:;" onclick="document.getElementById('img').src='check?dt='+new Date().getTime()">change</a>
<span><%String code=(String)request.getAttribute("error_code"); %><%=code==null?"":code %></span>
<input type="submit" value="submit" onclick=" return submitForm();">
</fieldset>
</form>
</body>
</html>
还有xmlreq.open("get","usernameValidate?dt="+new Date().getTime()+"&username="+username);中的usernameValidate是从何而来的?
第二次的时候 这个username那行的ONBLUR事件没了 然后浏览器报错USERNAME这行