溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Ajax 中怎么驗證用戶名是否存在

發布時間:2021-08-02 15:11:58 來源:億速云 閱讀:162 作者:Leah 欄目:web開發

Ajax 中怎么驗證用戶名是否存在,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

客戶端收集表單信息。
使用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函數在已經存在的用戶名搜索當前用戶輸入的名字,判斷是否已經存在。

看完上述內容,你們掌握Ajax 中怎么驗證用戶名是否存在的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女