校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > AJAX應(yīng)用之注冊用戶即時檢測

AJAX應(yīng)用之注冊用戶即時檢測

熱門標(biāo)簽:遼寧銀行智能外呼系統(tǒng) 姜堰電銷機(jī)器人 海南銀行智能外呼系統(tǒng)商家 許昌智能電銷機(jī)器人公司 上海浦東騰訊地圖標(biāo)注位置 電銷機(jī)器人違法了嗎 辰溪地圖標(biāo)注 遼寧正規(guī)電銷機(jī)器人 澳大利亞城市地圖標(biāo)注
AJAX的無刷新機(jī)制使得在注冊系統(tǒng)中對于注冊名稱的檢測能即時顯示。

常見的用戶注冊是用戶輸入用戶名,后臺程序檢測數(shù)據(jù)庫中用戶名是否重復(fù)而做出注冊的成功與失敗之提示(當(dāng)用戶注冊重名時將返回重新注冊),或者稍微人性化一點就是在用戶名文本框后添加一個檢測按鈕,讓用戶檢測后再做注冊。

以上操作,對于用戶體驗方面來說是比較“差勁”的,一個很好的用戶體驗就是:當(dāng)用戶輸入完注冊用戶名后,Web系統(tǒng)應(yīng)能即時檢查并即時顯示,并在檢查和顯示的同時不影響當(dāng)前頁面的操作。這也就是“異步獲取數(shù)據(jù)”的要求,而這正是AJAX的強(qiáng)項

比如如下的示例就能展現(xiàn)AJAX的該功能:

http://www.cnbruce.com/test/ajax/t1.htm

當(dāng)輸入已經(jīng)存在的用戶名(如cnbruce、cnrose)時頁面將顯示重名不能注冊(false),否則將顯示可以注冊(true),這為用戶的注冊提供了快速的參考,用戶體驗至上。

那么下面就來說說是如何來實現(xiàn)這樣的功能的。

其實通過如上的t1.htm的源代碼,各位就可以看到AJAX的精髓

首先是定義XMLHttp對象


var xmlHttp = false;
try {
  xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
  try {
    xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
  } catch (e2) {
    xmlHttp = false;
  }
}
if (!xmlHttp  typeof XMLHttpRequest != 'undefined') {
  xmlHttp = new XMLHttpRequest();
}



關(guān)于這部分內(nèi)容的說明請看:
http://www.cnbruce.com/blog/showlog.asp?cat_id=34log_id=987

接著是自定義函數(shù)


function callServer() {
  var u_name = document.getElementById("u_name").value;
  if ((u_name == null) || (u_name == "")) return;
  var url = "cu.asp?name=" + escape(u_name);
  xmlHttp.open("GET", url, true);
  xmlHttp.onreadystatechange = updatePage;
  xmlHttp.send(null);  
}


該函數(shù)的主要功能就是異步獲得cu.asp的內(nèi)容,在此前將先提取當(dāng)前頁表單元素“u_name”即用戶名文本框zhogn 的值,通過cu.asp其后的參數(shù)及賦值而得到了不同的結(jié)果(true or false)。

那么這里要說的即是cu.asp,他的主要功能就是接受URL參數(shù)name的值做內(nèi)容顯示,該內(nèi)容最終被t1.htm異步獲取。



!--cu.asp的源碼示例-->

!--#include file="conn.asp"-->
%
name=request.querystring("name")
Set rs = Server.CreateObject ("ADODB.Recordset")
sql = "Select * from u_ser where u_name='"name"'"
rs.Open sql,conn,1,1
if rs.eof and rs.bof then
    response.write("true")
else
    response.write("false")
end if
rs.close
set rs=nothing
call CloseDatabase
%>



如何將異步獲取的信息顯示在當(dāng)前頁呢


function updatePage() {
  if (xmlHttp.readyState  4) {
    test1.innerHTML="loading...";
  }
  if (xmlHttp.readyState == 4) {
    var response = xmlHttp.responseText;
    test1.innerHTML=response;
  }
}


其中xmlHttp.readyState中的readyState表示服務(wù)器在處理請求時的進(jìn)展?fàn)顩r,其值分別有0-4,各有其說明情況,具體請參看:

http://www.cnbruce.com/blog/showlog.asp?cat_id=34log_id=718

使用DHTML中的innerHTML可顯示信息在定義的 span id="test1">是否能注冊/span> 上。

其余表單頁面就不詳敘了

打包文件下載(下載后將后綴 .cnbruce 修改為 .rar):

http://www.cnbruce.com/test/ajax/ajax.cnbruce
您可能感興趣的文章:
  • PHP+Ajax異步通訊實現(xiàn)用戶名郵箱驗證是否已注冊( 2種方法實現(xiàn))
  • AJAX 用戶注冊時的應(yīng)用實例
  • Ajax 無刷新在注冊用戶名時的應(yīng)用的代碼
  • ajax對注冊名進(jìn)行驗證檢測是否存在于數(shù)據(jù)庫中

標(biāo)簽:深圳 伊春 西藏 撫州 威海 晉城 銅川 崇左

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《AJAX應(yīng)用之注冊用戶即時檢測》,本文關(guān)鍵詞  AJAX,應(yīng),用之,注冊,用戶,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《AJAX應(yīng)用之注冊用戶即時檢測》相關(guān)的同類信息!
  • 本頁收集關(guān)于AJAX應(yīng)用之注冊用戶即時檢測的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 鸡泽县| 宜州市| 桂东县| 莱西市| 寿宁县| 柘城县| 岐山县| 白玉县| 易门县| 宜兴市| 太康县| 龙里县| 新干县| 岳西县| 香格里拉县| 安徽省| 台中市| 安泽县| 伊川县| 吴忠市| 微博| 郯城县| 瓮安县| 四川省| 大姚县| 大英县| 襄樊市| 古田县| 安庆市| 万荣县| 东丽区| 鄯善县| 新泰市| 乐都县| 永兴县| 年辖:市辖区| 肥乡县| 漳州市| 外汇| 同江市| 临泽县|