zoukankan      html  css  js  c++  java
  • 黑马day17 ajax&实现username自己主动刷新

    1. regist.jsp文件

    <%@ page language="java"  pageEncoding="utf-8"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
        <head>
            <title>校验用户名是否存在</title>
            <script type="text/javascript" src="./regist.js"> </script>
        </head>
        <body>
        <center>
        <form action=""  enctype="application/x-www-form-urlencoded" method="post">
            <h3>请填写用户注冊信息</h3>
            <table  border="1">
                <tr>
                    <td>用户名:</td>
                    <td><input type="text" name="username" value="" id="username">
                      <div id="divcheck"></div>
                      <input type="button" name="checkusername" value="查看用户名" id="checkusername"></td>
                </tr>
                <tr>
                    <td>密码:</td>
                    <td><input type="password" name="psw" value=""></td>
                </tr>
                <tr>
                    <td>确认密码:</td>
                    <td><input type="password" name="confpsw" value=""></td>
                </tr>
                <tr>
                    <td>出生日期:</td>
                    <td><input type="text" name="birthday" value=""></td>
                </tr>
            </table>
             </form>
             </center>
        </body>
    
    </html>
    
    

    执行界面:
    这里写图片描写叙述
    2.regist文件

    window.onload=function(){
        document.getElementById("checkusername").onclick=function(){
            var username=document.getElementById("username").value;//获取text文本框中输入的值
            //1.获取xhr对象
            var xhr=ajaxFunction();
            //2.监听
            xhr.onreadystatechange=function(){
                if(xhr.readyState==4){
                    if(xhr.status==200){
                        var data=xhr.responseText;
                        document.getElementById("divcheck").innerHTML=data;
                    }
                }
            }
            //3.建立连接
            xhr.open("post","../servlet/ValidateUsernameServlet");
            //4.发送数据
            //假设请求类型是POST方式的话,须要设置请求首部信息
            xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
            xhr.send("username="+username);//把文本框中输入的用户名当做參数发送给server
        }
    }
    function ajaxFunction(){
       var xmlHttp;
       try{ // Firefox, Opera 8.0+, Safari
            xmlHttp=new XMLHttpRequest();
        }
        catch (e){
           try{// Internet Explorer
                 xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
              }
            catch (e){
              try{
                 xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
              }
              catch (e){}
              }
        }
    
        return xmlHttp;
     }
    

    3.ValidateUsernameServlet

    package app.servlet;
    
    import java.io.IOException;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    public class ValidateUsernameServlet extends HttpServlet {
    
        public void doGet(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            response.setContentType("text/html;charset=utf-8");
            request.setCharacterEncoding("utf-8");
            String username = request.getParameter("username");
            //模拟数据库
            if(username==null||"".equals(username)){
                response.getWriter().write("用户名不能为空!");
            }else if("sa".equals(username)){
                response.getWriter().write("用户名已经存在");
            }else{
                response.getWriter().write("用户名能够使用");
            }
        }
    
        public void doPost(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            doGet(request, response);
        }
    
    }
    

    当用户为空的时候
    当输入的用户是sa时

  • 相关阅读:
    22、Flyweight 享元模式
    js随机点名器(简单)
    js随机点名器(简单)
    PHP
    PHP
    Laravel框架实现利用监听器进行sql语句记录功能
    Laravel框架实现利用监听器进行sql语句记录功能
    PhpStorm常用的一些快捷键
    PhpStorm常用的一些快捷键
    HTTP状态码汇总
  • 原文地址:https://www.cnblogs.com/blfshiye/p/5413579.html
Copyright © 2011-2022 走看看