ajax的功能主要是應用在JS上,AJax對asp沒什麼要求,ASP只負責在後台顯示及操作服務端的數據。
可以像下面這樣思考:
1.寫表單第一項(如用戶名)
2.onblur事件(失去焦點)發生時開始驗證,onblur="checkusername()"
3.JS發一個請求給第一個asp(假定為AJaxusername.ASP)如果從數據庫中找到了這個用戶,給出1(AJaxusername.ASP所有內容就是一個1)如
<%
if(user.exist())response.write "1"
%>
4.JS收到,會自動執行checkuser()函數。
checkuser把用戶名一行底色改變,並顯示“用戶己存在”
ASP部分你就自己寫了。下面給出一些JS代碼。
<script>
/*以下函數一般不需要改變*/
var AJax;
function CreateAJax(){
if (window.XMLHttpRequest){
AJax = new XMLHttpRequest();
}else if (window.ActiveXObject){
AJax = new ActiveXObject("Microsoft.XMLHTTP");
}
}
function SendData(url_,sendtext_){
AJax.open("POST",url_,true);
AJax.onreadystatechange = checkuser;
AJax.send(sendtext_);
}
function CheckAjaxStatus(AJax_){
if(AJax_.readyState == 4)
if(AJax_.status == 200)
return true;
return false;
}
/*以上函數一般不需要改變*/
function checkuser(){
if(!CheckAjaxStatus(AJax))return;
//asp返回果對結果的處理。服務器返回的就是AJaxusername.ASP,這個結果存於AJax.responseText屬性中。
}
function checkusername(){
CreateAJax();
SendData("AJaxusername.JSP","username=" + name);
}
</script>