zoukankan      html  css  js  c++  java
  • 校验用户名是否存在(ajax+jackson)

    只是简单的仿某度注册的用户名输入离焦后检验

     目录结构

     

     没有涉及到数据库

    html
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>校验用户名是否存在</title>
        <script src="js/jquery-3.3.1.min.js"></script>
        <script>
            //页面加载完成后
            $(function () {
                //给用户名输入框定义一个离焦事件
                $("#username").blur(function () {
                    //获取文本输入框的值
                    var username=$(this).val();
                    /* 期望服务器端响应回来的数据格式是这样的(json):
                            {"userExit":true,"msg":"此用户太受欢迎,请换一个"}
                            {"userExit":false,"msg":"用户名可用"}
                     */
                    $.get("findUsernameServlet",{username:username},function (data) {
                        alert(data.msg);
                        var span = $("#s_username")
                        //判断响应回来的数据的键userExit是否为true
                        if (data.usernameExsit){
                            //true 用户名存在
                            span.css("color","red");
                            span.html(data.msg);
                        } else {
                            //false  用户名不存在
                            span.css("color","green");
                            span.html(data.msg);
                        }
                    },"json");
                });
            });
        </script>
    </head>
    <body>
        <form action="" method="get">
            <input type="text" id="username" name="username" placeholder="请输入用户名">
            <span id="s_username"></span><br>
            <input type="password" name="password" placeholder="请输入密码"><br>
            <input type="submit" value="注册">
        </form>
    </body>
    </html>
    View Code
    java servlet
    @WebServlet("/findUsernameServlet")
    public class FindUsernameServlet extends HttpServlet {
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            request.setCharacterEncoding("utf-8");
            String username = request.getParameter("username");
            response.setContentType("application/json;charset=utf-8");
    
            Map<String,Object> map=new HashMap<>();
            /*判断浏览器客户端传过来的数据  username
               true   {"userExit":true,"msg":"此用户太受欢迎,请换一个"}
               false    {"userExit":false,"msg":"用户名可用"}
                 */
            if ("tom".equals(username)){
                map.put("usernameExsit",true);
                map.put("msg","此用户太受欢迎,请换一个");
            }else {
                map.put("usernameExsit",false);
                map.put("msg","用户名可用");
            }
            //java:map-->json
            ObjectMapper mapper=new ObjectMapper();
            mapper.writeValue(response.getWriter(),map);
        }
    
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            this.doPost(request, response);
        }
    }
    View Code
  • 相关阅读:
    css 笔记
    解决谷歌浏览器中的input背景色默认是黄色
    lunbo
    操作json进行分组再组
    点击返回顶部
    关于有的手机浏览器下载APK时会成TXT
    火狐浏览器jsonshow插件
    微信web开发者工具
    浏览器UA
    click多次注册事件会导致一个事件被触发多次的解决方法
  • 原文地址:https://www.cnblogs.com/shiguanzui/p/11833917.html
Copyright © 2011-2022 走看看