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     }

    即可实现异步刷新 

  • 相关阅读:
    uni-app问题——请注意无 AppID 关联下,调用 wx.login 是受限的, API 的返回是工具的模拟返回
    echarts中实现线性渐变的两种方式
    echarts怎么把柱状图变成圆角
    vue-cli项目中ESLint报错整理
    vscode保存自动把单引号替换成双引号
    vscode快捷键
    vue-cli项目指定启动端口和编译后自动打开浏览器
    使用Fetch发送Ajax请求
    Service chromedriver unexpectedly exited. Status code was: -9 处理方法
    使用pyinstaller打包遇到的坑
  • 原文地址:https://www.cnblogs.com/limn/p/8029707.html
Copyright © 2011-2022 走看看