jQuery基于ajax方式实现用户名存在性检查功能示例


Posted in Javascript onFebruary 10, 2017

本文实例讲述了jQuery基于ajax方式实现用户名存在性检查功能。分享给大家供大家参考,具体如下:

对于拥有会员功能的网站,尤其是会员登录后可以留言或评论的网站,一般要求不能有两个或两个以上相同的用户名存在。因此,在用户注册的时就需要对用户名是否已经被注册进行检查防止出现相同的用户名。下面是我实现这种功能的一种解决方案。

1、方案原理:利用ajax的异步请求不刷新正在注册的页面向后端发送请求,后端对请求数据进行处理返回用户名是否已经存在的结果。

2、方案详情

(1)html代码部分,运用了input标签的onblur事件调用相应的js函数。

<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),所有请求均为异步请求。发送同步请求,请将此选项设置为 false。同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。
    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>
/// 检查用户名是否已经存在
/// </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程序设计有所帮助。

Javascript 相关文章推荐
JavaScript 保存数组到Cookie的代码
Apr 14 Javascript
改写一个简单的菜单 弹性大小
Dec 02 Javascript
避免回车键导致的页面无意义刷新的解决方法
Apr 12 Javascript
jQuery操作Select选择的Text和Value(获取/设置/添加/删除)
Mar 06 Javascript
jQuery中removeProp()方法用法实例
Jan 05 Javascript
jQuery插件zepto.js简单实现tab切换
Jun 16 Javascript
js实现延时加载Flash的方法
Nov 26 Javascript
AngularJS Bootstrap详细介绍及实例代码
Jul 28 Javascript
js编写选项卡效果
May 23 Javascript
jQuery实现上传图片前预览效果功能
Aug 03 jQuery
Angular请求防抖处理第一次请求失效问题
May 17 Javascript
在Vue中使用HOC模式的实现
Aug 23 Javascript
jQuery基于ajax实现页面加载后检查用户登录状态的方法
Feb 10 #Javascript
javascript自执行函数
Feb 10 #Javascript
完美解决jQuery的hover事件在IE中不停闪动的问题
Feb 10 #Javascript
jquery hover 不停闪动问题的解决方法(亦为stop()的使用)
Feb 10 #Javascript
JS验证不重复验证码
Feb 10 #Javascript
使用jquery给新生的th绑定hover事件的实例
Feb 10 #Javascript
详谈Ajax请求中的async:false/true的作用(ajax 在外部调用问题)
Feb 10 #Javascript
You might like
模拟xcopy的函数
2006/10/09 PHP
关于PHP堆栈与列队的学习
2013/06/21 PHP
PHP入门经历和学习过程分享
2014/04/11 PHP
PHP实现文件上传后台处理脚本
2020/03/04 PHP
PHP强制转化的形式整理
2020/05/22 PHP
由prototype_1.3.1进入javascript殿堂-类的初探
2006/11/06 Javascript
各浏览器中querySelector和querySelectorAll的实现差异分析
2012/05/23 Javascript
jquery连缀语法如何实现
2012/11/29 Javascript
原生JS实现表单checkbook获取已选择的值
2013/07/21 Javascript
IE6-IE9中tbody的innerHTML不能赋值的解决方法
2014/09/26 Javascript
什么是 AngularJS?AngularJS简介
2014/12/06 Javascript
node.js中的fs.lchmod方法使用说明
2014/12/16 Javascript
Javascript常用小技巧汇总
2015/06/24 Javascript
AngularJs Scope详解及示例代码
2016/09/01 Javascript
想学习javascript JS和jQuery哪个重要 先学哪个
2016/12/11 Javascript
JS实现随机颜色的3种方法与颜色格式的转化
2017/01/05 Javascript
vuex进阶知识点巩固
2018/05/20 Javascript
vue2.0 中使用transition实现动画效果使用心得
2018/08/13 Javascript
vue项目中使用tinymce编辑器的步骤详解
2018/09/11 Javascript
bootstrap与pagehelper实现分页效果
2018/12/29 Javascript
在vue中配置不同的代理同时访问不同的后台操作
2020/09/11 Javascript
Python求导数的方法
2015/05/09 Python
python执行使用shell命令方法分享
2017/11/08 Python
Python 爬虫之Beautiful Soup模块使用指南
2018/07/05 Python
Python3.5多进程原理与用法实例分析
2019/04/05 Python
解决pytorch GPU 计算过程中出现内存耗尽的问题
2019/08/19 Python
使用tkinter实现三子棋游戏
2021/02/25 Python
CSS3常用的几种颜色渐变模式总结
2016/11/18 HTML / CSS
HTML中meta标签及Keywords
2020/04/15 HTML / CSS
沪江旗下的海量优质课程平台:沪江网校
2017/11/07 全球购物
学习新党章思想汇报
2014/01/09 职场文书
创业计划书模版
2014/02/05 职场文书
检讨书范文
2019/04/16 职场文书
动漫APP软件排行榜前十名,半次元上榜,第一款由腾讯公司推出
2022/03/18 杂记
win10清理dns缓存
2022/04/19 数码科技
前端使用svg图片改色实现示例
2022/07/23 HTML / CSS