Ajax校验用户名是否存在的方法

本文实例为大家分享了ajax验证用户名是否存在的实例代码,代码简单易懂,非常不错,需要的朋友可以参考下

jsp页面

我引入了bootstrap和jquery

<div class="form-group">
     <label for="inputemail3" class="col-sm-2 control-label"
      style="color: #fff">姓名</label>
     <div class="col-sm-10">
      <input type="text" class="form-control" id="studentname"
       name="studentname" placeholder="请输入姓名">
        <span id="s_studentname">
     </div>
</div>

register.jsp页面

<script src="js/jquery.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<script>
 //页面加载完成之后
 function fun() {
  //给用户名绑定blur事件
  $("#studentname").blur(function() {
   //获取studentname文本框的值
   var studentname = $("#studentname").val();
   //发送ajax请求
   //期望服务器响应回的数据格式{"userexsit":true,"msg":"此用户名太受欢迎,请更换一个"}
   //                          {"userexsit":false,"msg":"此用户名已存在"}
   $.get("checknameservlet", {
    "studentname" : studentname
   }, function(data) {
    //判断userexsit键的值是否为true
    var span = $("#s_studentname");
    if (data.isexist) {
     //用户不存在
     span.css("color", "red");
     span.html(data.msg);
    } else {
     //用户存在,可以给提示,也可以不给
     span.html("");
    }
   },"json");
  });
 };
 fun();
</script>

后台student文件下的checknameservlet页面

protected void doget(httpservletrequest request, httpservletresponse response)
   throws servletexception, ioexception {
   //设置编码格式
  response.setcontenttype("text/html;charset=utf-8");
  //获取前端页面的值
  string name = request.getparameter("studentname");
  // 期望服务器响应回的数据格式{"isexsit":true,"msg":"此用户名太受欢迎,请更换一个"}
  // {"userexsit":false,"msg":"此用户名已存在"}

  // 检验是否存在该用户名
  try {
   boolean isexist = studentservice.isexist(name);
   system.out.println("isexist" + isexist);
   map<string, object> map = new hashmap<>();
   // 通知页面,到底有没有
   if (isexist) {
    map.put("isexist", true);
    map.put("msg", "此用户名太受欢迎,请更换一个");
   } else {
    map.put("isexist", false);
    // map.put("msg", "用户名可用");
   }
   //将map转换为json之前,要导包哦~
   // 将map转为json,并传递给客户端
   objectmapper mapper = new objectmapper();
   mapper.writevalue(response.getwriter(), map);
  } catch (sqlexception e1) {
   // todo auto-generated catch block
   e1.printstacktrace();
  }

 }

jdbcdemo的方法的实现(我没实现接口,直接写的)

public static boolean checkname(string name) throws sqlexception {
  boolean flag = false;
  string sql = "select * from student_table where student_name=?";
  preparedstatement statement = connection.preparestatement(sql);
  statement.setstring(1, name);
  resultset set = statement.executequery();
   如果存在我输入的用户名和数据库表中已有的用户名相同时
  if(set.next()) {
   flag = true;
  }
  return flag;
 }
}

总结:

以上所述是小编给大家介绍的ajax验证用户名是否存在的实例代码,希望对大家有所帮助。

相关文章