溫馨提示×

溫馨提示×

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

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

jQuery基于ajax方式如何實現(xiàn)用戶名存在性檢查功能

發(fā)布時間:2021-07-06 11:18:40 來源:億速云 閱讀:124 作者:小新 欄目:web開發(fā)

這篇文章給大家分享的是有關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)容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節(jié)

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

AI