您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關jQuery基于ajax方式如何實現(xiàn)用戶名存在性檢查功能的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
具體如下:
對于擁有會員功能的網(wǎng)站,尤其是會員登錄后可以留言或評論的網(wǎng)站,一般要求不能有兩個或兩個以上相同的用戶名存在。因此,在用戶注冊的時就需要對用戶名是否已經(jīng)被注冊進行檢查防止出現(xiàn)相同的用戶名。下面是我實現(xiàn)這種功能的一種解決方案。
1、方案原理:利用ajax的異步請求不刷新正在注冊的頁面向后端發(fā)送請求,后端對請求數(shù)據(jù)進行處理返回用戶名是否已經(jīng)存在的結果。
2、方案詳情
(1)html代碼部分,運用了input標簽的onblur事件調(diào)用相應的js函數(shù)。
<div class="pull-left"> <input id="username" name="username" type="text" class="form-control isUsername" onblur = "CheckUserName()"> </div>
(2)Jquery部分,采用了ajax技術
function CheckUserName() { var userName = $("#username").val(); var Option = { url: encodeURI('/Handler/AuthAccounts.ashx?action=checkusername&userName='+userName), type: "get", dataType: 'text', cache: false, //設置為 false 將不會從瀏覽器緩存中加載請求信息。 async: true, //(默認: true),所有請求均為異步請求。發(fā)送同步請求,請將此選項設置為 false。同步請求將鎖住瀏覽器,用戶其它操作必須等待請求完成才可以執(zhí)行。 timeout: 150000, //設置請求超時時間(毫秒)。此設置將覆蓋全局設置。 error: function () { }, success: function (data, textStatus) { if (data == null || data == undefined) { return false; } jsondata = eval('(' + data + ')'); if (jsondata.state == "success") { alert(jsondata.message); return false; } }, beforeSend: function () //檢查之前,是否通過格式驗證 { var text = $("#username-error").text(); if (text != ""&&text!=undefined&&text!=null) { return false; } } }; jQuery.ajax(Option); return false; }
(3)后端一般應用處理程序
/// <summary> /// 檢查用戶名是否已經(jīng)存在 /// </summary> /// <param name="context"></param> protected void CheckUserName(string userName) { CommonStruct commonStruct = new CommonStruct(); if (userName != "" && userName!=string.Empty) { QingCi.Model.ExecResultData result = QingCi.BLL.AuthAccounts.CheckUserNameExist(userName); if (result.State == stateSuccess) { commonStruct.state = stateSuccess; commonStruct.message = result.Message; HttpContext.Current.Response.Write(serializer.Serialize(commonStruct)); HttpContext.Current.Response.End(); } } }
感謝各位的閱讀!關于“jQuery基于ajax方式如何實現(xiàn)用戶名存在性檢查功能”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。