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 使用技巧精萃(.net html
Apr 25 Javascript
从QQ网站中提取的纯JS省市区三级联动菜单
Dec 25 Javascript
Js实现手机发送验证码时按钮延迟操作
Jun 20 Javascript
jQuery实现多级联动下拉列表查询框
Jan 18 Javascript
纯js实现瀑布流布局及ajax动态新增数据
Apr 07 Javascript
Jquery 自定义事件实现发布/订阅的简单实例
Jun 12 Javascript
JavaScript实现邮箱地址自动匹配功能代码
Nov 28 Javascript
Vue 2中ref属性的使用方法及注意事项
Jun 12 Javascript
JavaScript引用类型Date常见用法实例分析
Aug 08 Javascript
vue两组件间值传递 $router.push实现方法
May 15 Javascript
微信小程序 select 下拉框组件功能
Sep 09 Javascript
jQuery实现轮播图源码
Oct 23 jQuery
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
php下实现农历日历的代码
2007/03/07 PHP
PHP JSON格式的中文显示问题解决方法
2015/04/09 PHP
php使用gzip压缩传输js和css文件的方法
2015/07/29 PHP
Laravel框架实现调用百度翻译API功能示例
2019/05/30 PHP
如何在PHP中使用数组
2020/06/09 PHP
Ext grid 添加右击菜单
2009/11/26 Javascript
jQuery 获取对象 基本选择与层级
2010/05/31 Javascript
打开新窗口关闭当前页面不弹出关闭提示js代码
2013/03/18 Javascript
Checbox的操作含已选、未选及判断代码
2013/11/07 Javascript
jQuery入门基础知识学习指南
2015/08/14 Javascript
简述JavaScript提交表单的方式 (Using JavaScript Submit Form)
2016/03/18 Javascript
微信小程序如何获取用户信息
2018/01/26 Javascript
vue项目中axios使用详解
2018/02/07 Javascript
详解一个基于套接字实现长连接的express
2019/03/28 Javascript
微信小程序自定义组件components(代码详解)
2019/10/21 Javascript
vue搜索页开发实例代码详解(热门搜索,历史搜索,淘宝接口演示)
2020/04/11 Javascript
nodejs中内置模块fs,path常见的用法说明
2020/11/07 NodeJs
vue el-upload上传文件的示例代码
2020/12/21 Vue.js
[42:22]DOTA2上海特级锦标赛C组小组赛#1 OG VS Archon第一局
2016/02/27 DOTA
python实现RSA加密(解密)算法
2016/02/17 Python
TensorFlow打印tensor值的实现方法
2018/07/27 Python
python单例模式获取IP代理的方法详解
2018/09/13 Python
python去掉 unicode 字符串前面的u方法
2018/10/21 Python
浅谈Pandas:Series和DataFrame间的算术元素
2018/12/22 Python
python matplotlib如何给图中的点加标签
2019/11/14 Python
Selenium及python实现滚动操作多种方法
2020/07/21 Python
StringBuilder和String的区别
2015/05/18 面试题
Linux机考试题
2015/07/17 面试题
医学专业个人求职自荐信格式
2013/09/23 职场文书
大学生预备党员自我评价分享
2013/11/16 职场文书
聊城大学毕业生自荐书
2014/02/01 职场文书
酒店总经理助理职责
2014/02/12 职场文书
国际商贸专业自荐信
2014/06/09 职场文书
学术会议通知范文
2015/04/15 职场文书
2015年小班保育员工作总结
2015/05/27 职场文书
如何使用Tkinter进行窗口的管理与设置
2021/06/30 Python