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 相关文章推荐
摘自百度的图片轮换效果代码
Nov 19 Javascript
JQuery动画和停止动画实例代码
Mar 01 Javascript
用函数模板,写一个简单高效的 JSON 查询器的方法介绍
Apr 17 Javascript
js实现在同一窗口浏览图片
Sep 17 Javascript
JavaScript实现将数组中所有元素连接成一个字符串的方法
Apr 06 Javascript
js实现带缓冲效果的仿QQ面板折叠菜单代码
Sep 06 Javascript
学习JavaScript设计模式之享元模式
Jan 18 Javascript
jquery ajax局部加载方法详解(实现代码)
May 12 Javascript
JavaScript代码实现txt文件的上传预览功能
Mar 27 Javascript
jquery图片预览插件实现方法详解
Jul 18 jQuery
jQuery实现点击滚动到指定元素上的方法分析
Mar 19 jQuery
JS将指定的某个字符全部转换为其他字符实例代码
Oct 13 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
老机欣赏|中国60年代精品收音机
2021/03/02 无线电
PHP实现MVC开发得最简单的方法――模型
2007/04/10 PHP
56.com视频采集接口程序(PHP)
2007/09/22 PHP
PHP 采集程序原理分析篇
2010/03/05 PHP
win2003服务器使用WPS的COM组件的一些问题解决方法
2012/01/11 PHP
php文件打包 下载之使用PHP自带的ZipArchive压缩文件并下载打包好的文件
2012/06/13 PHP
Symfony页面的基本创建实例详解
2015/01/26 PHP
用js实现的仿sohu博客更换页面风格(简单版)
2007/03/22 Javascript
快速解决jquery之get缓存问题的最简单方法介绍
2013/12/19 Javascript
js实现点击按钮弹出上传文件的窗口
2016/12/23 Javascript
基于vue2.0实现的级联选择器
2017/06/09 Javascript
详解react-webpack2-热模块替换[HMR]
2017/08/03 Javascript
javascript中神奇的 Date对象小结
2017/10/12 Javascript
node.js调用C++函数的方法示例
2018/09/21 Javascript
VueCli3构建TS项目的方法步骤
2018/11/07 Javascript
浅谈webpack性能榨汁机(打包速度优化)
2019/01/09 Javascript
jQuery实现表格的增、删、改操作示例
2019/01/27 jQuery
JavaScript RegExp 对象用法详解
2019/09/24 Javascript
javascript设计模式 ? 装饰模式原理与应用实例分析
2020/04/14 Javascript
python使用wmi模块获取windows下的系统信息 监控系统
2015/10/27 Python
详解Python中is和==的区别
2019/03/21 Python
利用PyCharm Profile分析异步爬虫效率详解
2019/05/08 Python
Python 中pandas索引切片读取数据缺失数据处理问题
2019/10/09 Python
python 视频逐帧保存为图片的完整实例
2019/12/10 Python
Python类中的装饰器在当前类中的声明与调用详解
2020/04/15 Python
CSS3 画基本图形,圆形、椭圆形、三角形等
2016/09/20 HTML / CSS
SmartBuyGlasses台湾:名牌眼镜,名牌太阳眼镜及隐形眼镜
2017/01/04 全球购物
渗透攻击的测试步骤
2014/06/07 面试题
五年级音乐教学反思
2014/02/06 职场文书
《小石潭记》教学反思
2014/02/13 职场文书
男女朋友协议书
2014/04/23 职场文书
国家税务局干部作风整顿整改措施
2014/09/18 职场文书
扶贫办主任查摆“四风”问题个人对照检查材料思想汇报
2014/10/02 职场文书
2014年办公室工作总结范文
2014/11/12 职场文书
2015年助残日活动总结
2015/03/27 职场文书
Vue h函数的使用详解
2022/02/18 Vue.js