zoukankan      html  css  js  c++  java
  • ajax原生

    实现步骤

    给用户名文本框绑定onblur事件

    开发服务器端判断用户的是否可用功能

    使用Ajax完成功能

    创建XMLHttpRequest对象

    建立到服务器的连接

    设置服务器在完成后要运行的回调函数

    发送请求

    代码实现

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
        <base href="<%=request.getContextPath()+"/"%>">
        <title>注册页面</title>
        <script type="text/javascript">
            var   xhr;
            function  checkNC() {
                var nc = document.getElementById("nc").value;
                if(nc==null||nc==''){
                  document.getElementById("nc_span").innerText="用户名不能为空";
                }else {
                    //发送ajax请求
                      //[1]创建XMLHttpRequest对象
                      xhr=new XMLHttpRequest();
                      //[2]和服务器建立连接
                     //xhr.open(method,url,acy,username,passward);
                      xhr.open("get","RegisterServlet?nc="+nc,true);
                      //[3]执行回调函数
                     xhr.onreadystatechange=process;
                      //[4]发送请求数据
                     xhr.send(null);
                }
            }
            function  process() {
                  //接受ajax 的响应内容
                 var   text= xhr.responseText;
                 //把响应回的内容放到span中
                document.getElementById("nc_span").innerText=text;
            }
        </script>
    </head>
    <body>
      <h3>用户注册</h3>
    <form>
        <p>
            昵称:<input type="text" name="nc" id="nc" onblur="checkNC()"/>
            <span id="nc_span"></span>
        </p>
        <p>
            真是姓名:<input type="text" name="uname"/>
        </p>
        <p>
            密码:<input type="text" name="pwd"/>
        </p>
        <p>
            描述:<input type="text" name="desc"/>
        </p>
        <p>
            <input type="submit" value="注册"/>
        </p>

    </form>
    </body>
    </html>

    @WebServlet("/RegisterServlet")
    public class RegisterServlet  extends HttpServlet {
        @Override
        protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
             resp.setContentType("text/html;charset=utf-8");
            //[1]接受页面的数据
            String nc = req.getParameter("nc");

            System.out.println("昵称:"+nc);
            //[2]数据的处理-->返回结果
            boolean   flag=false;
            if("sxt".equals(nc)){
                flag=true;
            }
            //[3]根据返回结果做出响应
            PrintWriter out = resp.getWriter();
            if(flag){
                //证明用户名在数据库存在-->用户不可使用
                out.print("用户名占用");
            }else{
                //证明用户名子啊数据库不存在-->用户名可用
               out.print("用户名可用");
            }
        }
    }

  • 相关阅读:
    VS Code中Vetur与prettier、ESLint联合使用
    export 和 export default 的区别,exports 与 module.exports的区别
    css clearfix实现
    通过表单自动提交,实现页面转发
    .net webapi后台返回pdf文件流,前端ajax请求下载,空白pdf排错经历
    MS Sql Service 记一次in查询的优化
    MS SQL Service 查看执行计划
    ContOS7挂载硬盘
    centos命令行连接redis服务器
    如何造轮子
  • 原文地址:https://www.cnblogs.com/vincentmax/p/14281052.html
Copyright © 2011-2022 走看看