ajax的功能主要是應用在js上,ajax對asp沒什麼要求,asp只負責在後台顯示及操作服務端的資料。
可以像下面這樣思考:
1.寫表單第一項(如使用者名稱)
2.onblur事件(失去焦點)發生時開始驗證,onblur="checkusername()"
3.js發一個請求給第一個asp(假定為ajaxusername.asp)如果從資料庫中找到了這個使用者,給出1(ajaxusername.asp所有內容就是一個1)如
<%
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返回果對結果的處理。伺服器返回的就是ajax.asp,這個結果存於Ajax.responseText屬性中。
}
function checkusername(){
CreateAjax();
SendData("ajax.asp","username=" + name);
}
</script>