ajax異步驗證

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>

提交時驗證到後臺action

在action裏調用數據庫對用戶名進行驗證,可用out.print方法寫入

也可以在配置文件中

<resultname="success">
<paramname="resultValue">$resultValue}</param>
</result>

注:action裏直接給resultValue複製,(最好爲全局變量)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章