欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

jQuery基于ajax方式實(shí)現(xiàn)用戶名存在性檢查功能示例

 更新時(shí)間:2017年02月10日 10:41:18   作者:Mr-Robot  
這篇文章主要介紹了jQuery基于ajax方式實(shí)現(xiàn)用戶名存在性檢查功能,結(jié)合實(shí)例形式分析了jQuery前臺(tái)ajax交互及后臺(tái)C#驗(yàn)證操作的相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下

本文實(shí)例講述了jQuery基于ajax方式實(shí)現(xiàn)用戶名存在性檢查功能。分享給大家供大家參考,具體如下:

對(duì)于擁有會(huì)員功能的網(wǎng)站,尤其是會(huì)員登錄后可以留言或評(píng)論的網(wǎng)站,一般要求不能有兩個(gè)或兩個(gè)以上相同的用戶名存在。因此,在用戶注冊(cè)的時(shí)就需要對(duì)用戶名是否已經(jīng)被注冊(cè)進(jìn)行檢查防止出現(xiàn)相同的用戶名。下面是我實(shí)現(xiàn)這種功能的一種解決方案。

1、方案原理:利用ajax的異步請(qǐng)求不刷新正在注冊(cè)的頁(yè)面向后端發(fā)送請(qǐng)求,后端對(duì)請(qǐng)求數(shù)據(jù)進(jìn)行處理返回用戶名是否已經(jīng)存在的結(jié)果。

2、方案詳情

(1)html代碼部分,運(yùn)用了input標(biāo)簽的onblur事件調(diào)用相應(yīng)的js函數(shù)。

<div class="pull-left">
  <input id="username" name="username" type="text" class="form-control isUsername" onblur = "CheckUserName()">
</div>

(2)Jquery部分,采用了ajax技術(shù)

function CheckUserName()
{
  var userName = $("#username").val();
  var Option =
  {
    url: encodeURI('/Handler/AuthAccounts.ashx?action=checkusername&userName='+userName),
    type: "get",
    dataType: 'text',
    cache: false, //設(shè)置為 false 將不會(huì)從瀏覽器緩存中加載請(qǐng)求信息。
    async: true, //(默認(rèn): true),所有請(qǐng)求均為異步請(qǐng)求。發(fā)送同步請(qǐng)求,請(qǐng)將此選項(xiàng)設(shè)置為 false。同步請(qǐng)求將鎖住瀏覽器,用戶其它操作必須等待請(qǐng)求完成才可以執(zhí)行。
    timeout: 150000, //設(shè)置請(qǐng)求超時(shí)時(shí)間(毫秒)。此設(shè)置將覆蓋全局設(shè)置。
    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 () //檢查之前,是否通過(guò)格式驗(yàn)證
    {
      var text = $("#username-error").text();
      if (text != ""&&text!=undefined&&text!=null)
      {
        return false;
      }
    }
  };
  jQuery.ajax(Option);
  return false;
}

(3)后端一般應(yīng)用處理程序

/// <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();
     }
   }
}

更多關(guān)于jQuery相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《jquery中Ajax用法總結(jié)》、《jQuery操作json數(shù)據(jù)技巧匯總》、《jQuery form操作技巧匯總》、《jQuery常用插件及用法總結(jié)》、《jQuery擴(kuò)展技巧總結(jié)》、《jQuery表格(table)操作技巧匯總》及《jquery選擇器用法總結(jié)

希望本文所述對(duì)大家jQuery程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論