初涉后端,还请见谅···By Ajax验证注册的帐号数据库中是否存在

#By Ajax验证注册的帐号数据库中是否存在php

初涉后端,若有冒犯,还请后端大哥指正

Ajax的存在,给了咱们真的事太多惊喜。这种技术的存在就是让咱们在无需刷新页面,就能够从数据库中取得数据。

不BB了,上代码~
Ajax:(这里以发送post请求为例)
    1.建立一个对象:
        let xhr = new XMLHttpRequest();
    2.配置这个对象(调用open()的方法)
        //第一个参数为请求的类型、第二个参数为请求的URL,第三个参数为是否异步发送的布尔值
        xhr.open('GET',`/marvel/api/checkuser.php?username=${user}`,true)
    3.准备接受响应(readystate是对象xhr的一个属性,在这里咱们利用事件监听这个属性的状态的改变)
    xhr.onreadystatechange = function() {
        //当readyState发生了变化,会触发该事件。
            xhr.readyState ===0 ===>xhr这个对象刚建立,可是没有调用
            xhr.readyState ===1 ===>对象调用了,可是没有send
            xhr.readyState ===2 ===> 对象调用了send,可是没有返回响应
            xhr.readyState ===3 ===>对象收到了部分响应
            xhr.readyState ===4 ===>收到了所有的响应
        //咱们对数值进行判断,若是!=4,就return
        if(xhr.readyState !=4) {
            return;
        }
        //若是xhr这个对象的属性readyState ===4;服务器已经给出了所有的响应。可是咱们还须要进一步去判断浏览器的相应结果,也就是响应的状态码。这个状态码放置在xhr.status中,当状态码在[200,300)之间,咱们就能够认为其响应成功。
        if(xhr.status >=200 &&xhr.status < 300) {
            //响应成功,咱们须要取得响应的数据,放在对象xhr的responseText中.
            alert(xhr.responseText);    //responseText是知足json格式的字符串
        }else{
            //响应失败
        }
    }
    //4.发送请求
    xhr.send(); //调用xhr的send()方法。在括号中没必要写入确切值。
    change
【另须要注意的是ajax是不支持后端请求重定向的】

解释:对于ajax,本文介绍的很笼统,只是向你们解释最基本的ajax发送get请求的基本方法与验证注册帐号是否存在,因此,咱们还没完呢~
不少事情的操做都是离不开对DOM的操做的,咱们要验证注册的帐号,就必须取得这个帐号以后发送给后端。
document.querySelector('input[name="username"]').onblor = function() {
    var user = this.value;
    //把上文的ajax放在这就OK了。
}

本屌丝写了这么多的代码难道就不能给我一个赞嘛。
复制代码
相关文章
相关标签/搜索