zoukankan      html  css  js  c++  java
  • 检验用户名是否存在。用到Ajax 和没有用到Ajax 两个举例。

    假如页面上的用户名文本框是这么写的:用户名:<input type="text" name="userName"/>

    方法一:没有用到Ajax 

    1、先获取页面上输入的用户名的值。:String username = requset.getParameter("userName")  注意:括号里的userName 要和你页面上 用户名文本框的 name 属性值一样,才能获取到。

    2、写方法获取数据库里用户名所在表的用户名的字段,SQL 语句这样写:select username from user(表名) where username = ?。username = ?:这里传入的username 就是你输入的用户名。做个判断,如果结果(result)为 null ,就是不存在。

    3、把结果放入 request 中:request.setAttribute("result", result)。

    4、在页面上获取 result 就可以了。:${requestScope.result}

    假如页面上的用户名文本框是这么写的:用户名:<input type="text" name="username"/> <div id="message"></div>

    方法二:用到了Ajax

    1、在页面上写jQuery:

    $(":input").change(function(){  //获取表单input ,如果发生 change 事件
                //获取表单里的这个值,这里是username
                var val = $(this).val();
                //去除前后空格
                val = $.trim(val);
                //如果不为空
                if(val != ""){
            //你要去的Servlet
    var url = "userServlet";
            //method 是自己在Servlet 里建,username 是你获取的输入的值,加一个时间戳
    var args = {"method":"checkStockId", "username":val, "time": new Date()}; $.post(url, args, function(data){
              //返回一个 message :用户名是否存在 $(
    "#message").html(data); }); } });

    2、在servlet 的方法里这样写

        protected void checkStockId(HttpServletRequest request, HttpServletResponse response) 
                throws ServletException, IOException {
            //获取请求参数:用户名
            String username= request.getParameter("username");
            
            //获取数据库中的用户名,这里的方法getUser 就没有给出了
            String username = userDao.getUser(username);
            List<String> userlist = Arrays.asList(username);
            //两者比较
            String result = null;
            if(stocklist.contains(Integer.parseInt(stockIdStr))){
                result = "<font color='red'>该用户名已存在,请重新输入</font>";
            }else{
                result = "<font color='green'>该用户名可以使用</font>";
            }
                
            response.setContentType("text/html, charset=UTF-8");
            response.setCharacterEncoding("UTF-8");
            response.getWriter().print(result);
        }

    over。

  • 相关阅读:
    spring事务管理中,使用Synchronized修饰事务方法,同步为什么会失效
    java枚举类是怎么初始化的,为什么说枚举类是线程安全的
    spring事务管理中,同一个Service类中非事务方法调用事务方法,事务失效解决方法(3种)
    spring boot借助freemarker实现word文档模板导出
    mybatis plus使用报错:Caused by: java.sql.SQLException: sql injection violation, syntax error: syntax err
    js中遍历枚举类型
    IDEA 设置SVN提交忽略文件 target .iml
    python中的open( )函数
    使用crf++
    安装crf++
  • 原文地址:https://www.cnblogs.com/daoxiaobai/p/6395489.html
Copyright © 2011-2022 走看看