zoukankan      html  css  js  c++  java
  • 基于jQuery实现的Ajax 验证用户名唯一性

    基于jQuery实现的Ajax 验证用户名唯一性

    前端jsp页面代码 

    1 <tr>
    2                                     <th><span class="requiredField">*</span>用户名:</th>
    3                                     <td><input type="text" id="username" name="username"
    4                                         onblur="checkName()" class="text" maxlength="20"><span
    5                                             id="tishi"></span></td>
    6                                 </tr>

    script 代码 

     1 <script type="text/javascript">
     2 
     3     function checkName() {
     4         var username = $("#username").val();
     5         //获取账号后的提示信息文本
     6         var tishi = document.getElementById("tishi");
     7         $.ajax({
     8             url : "${pageContext.request.contextPath}/user_findByUsername.action", //后台查询验证的方法
     9             data : {
    10                 "username" : username
    11             }, //携带的参数
    12             type : "post",
    13             success : function(msg) {
    14                 //根据后台返回前台的msg给提示信息加HTML
    15                 if ("true" != msg) {
    16                     // 账号已经存在
    17                     tishi.innerHTML = "<font color='red'>抱歉," + username + "已被注册,请更换!</font>"
    18                 } else {
    19                     // 账号不存在
    20                     tishi.innerHTML = "<font color='green'>恭喜," + username + " 可以注册!</font>"
    21                 }
    22             }
    23         });
    24 
    25     }
    26 </script>

    其中UserAction中的代码 

     1 public String findByUsername() throws IOException{
     2         User u=userService.findByUsername(user.getUsername());
     3           String result = "true";
     4           if (u!=null ) {
     5               //说明账号存在
     6               result = "false";
     7           }
     8           //输出到界面
     9           HttpServletResponse response = ServletActionContext.getResponse();
    10           response.setContentType("text/html");
    11           ServletOutputStream outputStream = response.getOutputStream();
    12           outputStream.write(result.getBytes());
    13           outputStream.close();
    14         return NONE;
    15     }

    Userservice中的代码 

    1 public User findByUsername(String username) {
    2         return userDao.findByUsername(username);
    3     }

    UserDaoImpl中的代码 

    1     public User findByUsername(String username) {
    2         List<User> list=(List<User>) this.getHibernateTemplate().find("from User where username=?",username);
    3         if(list!=null&&list.size()>0){
    4             return list.get(0);
    5         }
    6         return null;
    7     }

    即可实现异步刷新 

  • 相关阅读:
    小程序中自定义组件
    rem是如何实现自适应布局的?
    基于vue前端状态管理模式
    vue项目使用keep-alive的作用
    JS移动元素的方法
    es6 promise then对异常处理的方法
    async/await 中await接收的promise的问题
    angularjs ngRoute demo
    angularjs $watch demo
    Html5 Geolocation demo
  • 原文地址:https://www.cnblogs.com/limn/p/8029707.html
Copyright © 2011-2022 走看看