Ajax验证用户名或昵称是否已被注册


Posted in Javascript onApril 05, 2017

JavaScript中XMLHttpRequest对象是整个Ajax技术的核心,它提供了异步发送请求的能力 。而用户名或昵称的验证就可以使XMLHttpRequest对象实现。下面是个小例子。

页面:

简单的输入框

<body>
  昵称:<input type="text" name="username" ><span id="msg">请输入昵称</span><br>
  密码:<input type="password" name="password">
 </body>

Ajax验证用户名或昵称是否已被注册

JS代码如下:

window.onload=function()
    {
      var nameElement=document.getElementsByName("username")[0];
      //为昵称选项注册onblur事件
      nameElement.onblur=function()
      {
        var name=this.value;
        //1.获取XMLHttpRequest对象
        var req=getXMLHttpRequest();
        //4.处理响应结果
        req.onreadystatechange=function(){
          if(req.readyState==4){//XMLHttpRequest对象读取成功
            if(req.status==200){//服务器相应正常
              var msg=document.getElementById("msg");
              //根据返回的结果显示不同的信息
              if(req.responseText=="true"){
                msg.innerHTML="<font color='red'>该昵称已注册</font>";
              }else{
                msg.innerHTML="<font color='green'>可以使用</font>";
              }
            }
          }
        }
        //2.建立一个连接
        req.open("get","${pageContext.request.contextPath}/servlet/checkUserServlet?name="+name);
        //3.发送get请求
        req.send(null);
      }
    }

getElementsByName方法,根据浏览器的不同获得不同的XMLHttpRequest对象(提供异步发送请求的能力):

function getXMLHttpRequest(){
  var xmlhttp;
    if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
      xmlhttp = new XMLHttpRequest();
    } else {// code for IE6, IE5
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
    return xmlhttp;
}

servlet:仅仅为了测试,并没有真正从dao层查询

public void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    PrintWriter pw=response.getWriter();
    String name=request.getParameter("name");
    //判断昵称是否已被使用
    if("tom".equals(name)){
      pw.print(true);
    }else{
      pw.print(false);
    }
  }
  public void doPost(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {

    doGet(request, response);
  }

测试:

Ajax验证用户名或昵称是否已被注册

由于在servlet中我们只验证tom是否存在,所以tom显示已使用。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
QQ登录简单实现代码
Mar 09 Javascript
让插入到 innerHTML 中的 script 跑起来的实现代码
Jul 01 Javascript
javascript 24小时弹出一次的代码(利用cookies)
Sep 03 Javascript
jquery live()调用不存在的解决方法
Feb 26 Javascript
JQuery选择器绑定事件及修改内容的方法
Jan 23 Javascript
运行Node.js的IIS扩展iisnode安装配置笔记
Mar 02 Javascript
JavaScript使用Replace进行字符串替换的方法
Apr 14 Javascript
js实现大转盘抽奖游戏实例
Jun 24 Javascript
关于网页中的无缝滚动的js代码
Jun 09 Javascript
轻松5句话解决JavaScript的作用域
Jul 15 Javascript
基于Node.js模板引擎教程-jade速学与实战1
Sep 17 Javascript
Vue 中使用vue2-highcharts实现曲线数据展示的方法
Mar 05 Javascript
JS二叉树的简单实现方法示例
Apr 05 #Javascript
Angular.JS利用ng-disabled属性和ng-model实现禁用button效果
Apr 05 #Javascript
js获取指定时间的前几秒
Apr 05 #Javascript
JavaScript使用原型和原型链实现对象继承的方法详解
Apr 05 #Javascript
webpack2.0搭建前端项目的教程详解
Apr 05 #Javascript
详解使用fetch发送post请求时的参数处理
Apr 05 #Javascript
详解用webpack2.0构建vue2.0超详细精简版
Apr 05 #Javascript
You might like
社区(php&amp;&amp;mysql)六
2006/10/09 PHP
php float不四舍五入截取浮点型字符串方法总结
2013/10/28 PHP
Codeigniter操作数据库表的优化写法总结
2014/06/12 PHP
浅谈php冒泡排序
2014/12/30 PHP
php获取从百度、谷歌等搜索引擎进入网站关键词的方法
2015/07/08 PHP
微信获取用户地理位置信息的原理与步骤
2015/11/12 PHP
在Mac OS上自行编译安装Apache服务器和PHP解释器
2015/12/24 PHP
php mysql数据库操作类(实例讲解)
2017/08/06 PHP
Javascript实例教程(19) 使用HoTMetal(5)
2006/12/23 Javascript
js 实现css风格选择器(压缩后2KB)
2012/01/12 Javascript
JS实现标签页效果(配合css)
2013/04/03 Javascript
js动态设置鼠标事件示例代码
2013/10/30 Javascript
javascript写的异步加载js文件函数(支持数组传参)
2014/06/07 Javascript
jQuery对val和atrr(&quot;value&quot;)赋值的区别介绍
2014/09/26 Javascript
JavaScript中的普通函数与构造函数比较
2015/04/07 Javascript
jQuery实现悬浮在右上角的网页客服效果代码
2015/10/24 Javascript
Jquery on绑定的事件 触发多次实例代码
2016/12/08 Javascript
JS创建Tag标签的方法详解
2017/06/09 Javascript
Node.js 多进程处理CPU密集任务的实现
2019/05/26 Javascript
简单谈谈javascript高级特性
2019/09/04 Javascript
python访问类中docstring注释的实现方法
2015/05/04 Python
在Python中使用PIL模块对图片进行高斯模糊处理的教程
2015/05/05 Python
Python实现字典的key和values的交换
2015/08/04 Python
Python实现字符串匹配算法代码示例
2017/12/05 Python
对numpy中shape的深入理解
2018/06/15 Python
python基于opencv实现人脸识别
2021/01/04 Python
python学习之使用Matplotlib画实时的动态折线图的示例代码
2021/02/25 Python
iphoneX 适配客户端H5页面的方法教程
2017/12/08 HTML / CSS
美国电视购物HSN官网:HSN
2016/09/07 全球购物
尤妮佳moony海外旗舰店:日本殿堂级纸尿裤品牌
2018/02/23 全球购物
软件配置管理有什么好处
2015/04/15 面试题
元旦获奖感言
2014/03/08 职场文书
四风批评与自我批评范文
2014/10/14 职场文书
2016年3月份红领巾广播稿
2015/12/21 职场文书
Mongo服务重启异常问题的处理方法
2021/07/01 MongoDB
pd.DataFrame中的几种索引变换的实现
2022/06/16 Python