functioncheckusername(){
varusername=document.getElementById("").value;
//1.建立XMLHttp协议对象
varxmlHttp;
if(window.ActiveXObject){
xmlHttp=newActiveXObject("Microsoft.XMLHTTP");
}elseif(window.XMLHttpRequest){
xmlHttp=newXMLHttpRequest();
}else{
alert('您的浏览器不支持Ajax验证');
}
//2.建立一个请求
varmethod="GET";
//将中文参数值转成UTF-8编码,解决传递参数的中文问题
varurl="TestAjaxAndValidatorAction!CheckUser.action?username="+username;
url=encodeURI(url);
xmlHttp.open(method,url);
//3.设置readyState响应处理函数
xmlHttp.onreadystatechange=function(){
//判断是否已经完成
if(xmlHttp.readyState==4){
//判断响应是否正常
if(xmlHttp.status==200){
//获取服务端响应的字符串
varresult=xmlHttp.responseText;
//document.getElementById("xxx").innerHTML=result;
alert(result);
}
}
}
//4.发送请求
xmlHttp.send();
}数据库
jsp:浏览器
<s:formaction="TestAjaxAndValidatorAction!insertUser.action"method="post">
<s:textfieldlabel="用户名"id="userName"name="userName"onblur="checkusername();"></s:textfield>
<s:textfieldlabel="密码"name="password"></s:textfield>
<s:submitvalue="注册用户"></s:submit>
</s:form>jsp
提交时验证到后台actionide
在action里调用数据库对用户名进行验证,可用out.print方法写入函数
也能够在配置文件中post
<resultname="success">
<paramname="resultValue">$resultValue}</param>
</result>编码
注:action里直接给resultValue复制,(最好为全局变量)url