国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > AJAX > 正文

Ajax 用戶名驗證是否存在

2024-09-01 08:29:30
字體:
來源:轉載
供稿:網友
客戶端收集表單信息。
使用XMLHttpRequest對象提交到服務器。
服務器完成驗證的邏輯,返回結果信息。
瀏覽器端根據服務器返回的信息對用戶做出一定的提示。
不過由于我的空間不支持任何服務器段語言,所以把本應在服務器的邏輯搬到了瀏覽器,由JavaScript來做,服務器只負責提供一個用戶名的列表。最后的效果如下,試著輸入test,cainiao8這些用戶名,都會顯示已注冊。
JavaScript代碼分析
首先,當文檔載入完畢的時候,給表格設置change事件的響應函數ajaxValidate,代碼如下:
程序代碼
addEventSimple(window,'load',function(){
var test = document.getElementById('username');
addEventSimple(test,'change',ajaxValidate);
}
這樣,當用戶名文本框內的值改變之后,就會調用ajaxValidate函數,其代碼如下:
程序代碼
function ajaxValidate(){
var options = {
url:'ajax/ajaxUsernames.xml',
listener:callback,
method:'GET'
}
var request = createRequest(options);
request.send(null);
}
它會使用之前介紹的createRequest函數初始化一個XMLHttpRequest對象,并且將它發送到服務器,請求ajaxUsernames.xml文件。
最后就是callback函數了:
程序代碼
代碼如下:
function callback(){
var xmlDoc = this.responseXML;
var root = xmlDoc.getElementsByTagName('root')[0];
var nodes = root.getElementsByTagName("username");
var currentNode = null;
var username = document.getElementById('username').value;
for(var i = 0; i < nodes.length; i++) {
currentNode = nodes[i];
if(username == currentNode.childNodes[0].nodeValue){
document.getElementById('test').innerHTML = '對不起!'+username+'已經被注冊。';
return;
}
}
document.getElementById('test').innerHTML = '用戶名' + username +'可以使用!';
}

callback函數在已經存在的用戶名搜索當前用戶輸入的名字,判斷是否已經存在。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 本溪| 昂仁县| 阿荣旗| 恩平市| 巴中市| 重庆市| 金山区| 璧山县| 辽阳市| 南召县| 古田县| 军事| 张家港市| 秦安县| 凌海市| 大渡口区| 怀宁县| 长沙县| 六安市| 友谊县| 图片| 自治县| 微山县| 江达县| 云浮市| 二连浩特市| 泾阳县| 松溪县| 旺苍县| 金阳县| 百色市| 长岭县| 苗栗市| 吴江市| 宾阳县| 福安市| 鹤峰县| 双柏县| 霍邱县| 明光市| 鱼台县|