Ajax使用原生态JS验证用户名是否存在


Posted in Javascript onMay 26, 2020

本文实例为大家分享了JS验证用户名是否存在的具体代码,供大家参考,具体内容如下

直接上代码:

reg_ajax.html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Ajax请求servlet实现用户名是否存在验证</title>
</head>
<body>

 <script type="text/javascript">

  /** 
   * 得到XMLHttpRequest对象 
   */
  function getajaxHttp() {
   var xmlHttp;
   try {
    // Firefox, Opera 8.0+, Safari 
    xmlHttp = new XMLHttpRequest();
   } catch (e) {
    // Internet Explorer 
    try {
     xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
     try {
      xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
     } catch (e) {
      alert("您的浏览器不支持AJAX!");
      return false;
     }
    }
   }
   return xmlHttp;
  }
  /** 
   * 发送ajax请求 
   * url--请求到服务器的URL 
   * methodtype(post/get) 
   * con (true(异步)|false(同步)) 
   * functionName(回调方法名,不需要引号,这里只有成功的时候才调用) 
   * (注意:这方法有二个参数,一个就是xmlhttp,一个就是要处理的对象) 
   */
  function ajaxrequest(url, methodtype, con, functionName) {
   //获取XMLHTTPRequest对象
   var xmlhttp = getajaxHttp();
   //设置回调函数(响应的时候调用的函数)
   xmlhttp.onreadystatechange = function() {
    //这个函数中的代码在什么时候被XMLHTTPRequest对象调用?
    //当服务器响应时,XMLHTTPRequest对象会自动调用该回调方法
    if (xmlhttp.readyState == 4) {
     if (xmlhttp.status == 200) {
      functionName(xmlhttp.responseText);
     }
    }
   };
   //创建请求
   xmlhttp.open(methodtype, url, con);
   //发送请求
   xmlhttp.send();
  }
  function checkUsername() {
   var username=document.getElementById('username').value;
   //调用ajax请求Servlet
   ajaxrequest("userServlet?username="+username,"POST",true,ckUsernameResponse);
  }
  function ckUsernameResponse(responseContents){
   if (responseContents=='yes') {
    document.getElementById('usernameMsg').innerHTML="<font color='red'>用户名存在</font>";
    document.getElementById('username').style="background-color: red";
   }else{
    document.getElementById('usernameMsg').innerHTML="";
    document.getElementById('username').style="background-color: white";
   }
  }

 </script>

 <table>
  <tr>
   <td>用户名</td>
   <td><input type="text" id="username" onblur="checkUsername()"/></td>
   <td><div id="usernameMsg"></div></td>
  </tr>
  <tr>
   <td>邮箱</td>
   <td><input type="text" id="email" /></td>
   <td><div id="emailMsg"></div></td>
  </tr>
 </table>


</body>
</html>

请求的Servlet代码如下,UserServlet.java

package cn.bestchance.servlet;

import java.io.IOException;
import java.util.ArrayList;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class UserServlet
 */
@WebServlet("/userServlet")
public class UserServlet extends HttpServlet {
 private static final long serialVersionUID = 1L;


 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  doPost(request, response);
 }

 /**
  * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
  */
 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  String username=request.getParameter("username");
  //这里使用ArrayList代替从数据库中查询数据
  ArrayList<String> userList =new ArrayList<String>();
  userList.add("admin");
  userList.add("test");
  userList.add("chance");
  //验证用户名是否存在
  boolean flag = false;
  for (String string : userList) {
   if(string.equals(username)){
    flag = true;
    break;
   }
  }
  if(flag){//用户名已存在
   response.getWriter().print("yes");
  }else{//用户名不存在
   response.getWriter().print("no");
  }
 }

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Prototype使用指南之string.js
Jan 10 Javascript
javascript 面向对象全新理练之数据的封装
Dec 03 Javascript
jQuery ajax 路由和过滤器使用说明
Aug 02 Javascript
Javascript MVC框架Backbone.js详解
Sep 18 Javascript
使用jQuery将多条数据插入模态框的实现代码
Oct 08 Javascript
JS实现简单路由器功能的方法
May 27 Javascript
针对BootStrap中tabs控件的美化和完善(推荐)
Jul 06 Javascript
SelectPage v2.4 发布新增纯下拉列表和关闭分页功能
Sep 07 Javascript
vue 计时器组件的实现代码
Sep 14 Javascript
简述Angular 5 快速入门
Nov 04 Javascript
微信小程序 slot踩坑的解决
Apr 01 Javascript
JS多个表单数据提交下的serialize()应用实例分析
Aug 27 Javascript
jQuery子元素过滤选择器用法示例
Sep 09 #Javascript
老生常谈JQuery data方法的使用
Sep 09 #Javascript
Vuejs第十一篇组件之slot内容分发实例详解
Sep 09 #Javascript
jQuery内容过滤选择器用法示例
Sep 09 #Javascript
Vue.js动态组件解析
Sep 09 #Javascript
JS判断form内所有表单是否为空的简单实例
Sep 09 #Javascript
jQuery查找节点并获取节点属性的方法
Sep 09 #Javascript
You might like
php上传文件,创建递归目录的实例代码
2013/10/18 PHP
PHP内存缓存功能memcached示例
2016/10/19 PHP
Thinkphp5.0自动生成模块及目录的方法详解
2017/04/17 PHP
PHP命名空间(namespace)原理与用法详解
2019/12/11 PHP
用js 让图片在 div或dl里 居中,底部对齐
2008/01/21 Javascript
event.X和event.clientX的区别分析
2011/10/06 Javascript
js拖动div 当鼠标移动时整个div也相应的移动
2013/11/21 Javascript
js实现鼠标左右移动,图片也跟着移动效果
2017/01/25 Javascript
原生JS实现图片网格式渐显、渐隐效果
2017/06/05 Javascript
webpack构建vue项目的详细教程(配置篇)
2017/07/17 Javascript
vue使用mint-ui实现下拉刷新和无限滚动的示例代码
2017/11/06 Javascript
javaScript和jQuery自动加载简单代码实现方法
2017/11/24 jQuery
js 图片转base64的方式(两种)
2018/04/24 Javascript
JS实现字符串中去除指定子字符串方法分析
2018/05/17 Javascript
了解javascript中的Dom操作
2019/05/27 Javascript
浅谈vue生命周期共有几个阶段?分别是什么?
2020/08/07 Javascript
在vue中使用image-webpack-loader实例
2020/11/12 Javascript
[02:30]DOTA2英雄基础教程 暗影恶魔
2013/12/17 DOTA
Python 变量类型及命名规则介绍
2013/06/08 Python
python中二维阵列的变换实例
2014/10/09 Python
python让图片按照exif信息里的创建时间进行排序的方法
2015/03/16 Python
Cpy和Python的效率对比
2015/03/20 Python
听歌识曲--用python实现一个音乐检索器的功能
2016/11/15 Python
一步步教你用Python实现2048小游戏
2017/01/19 Python
Python设计模式之MVC模式简单示例
2018/01/10 Python
10 分钟快速入门 Python3的教程
2019/01/29 Python
Python生成一个迭代器的实操方法
2019/06/18 Python
安装多个版本的TensorFlow的方法步骤
2020/04/21 Python
matplotlib bar()实现百分比堆积柱状图
2021/02/24 Python
英国最大的百货公司:Harrods
2016/08/18 全球购物
马来西亚在线健康商店:Medipal Malaysia
2020/04/13 全球购物
教师考察材料范文
2014/06/03 职场文书
文案策划专业自荐信
2014/07/07 职场文书
2015年安全保卫工作总结
2015/05/14 职场文书
Python手拉手教你爬取贝壳房源数据的实战教程
2021/05/21 Python
一文搞清楚MySQL count(*)、count(1)、count(col)区别
2022/03/03 MySQL