初涉後端,還請見諒···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了。
}

本屌絲寫了這麼多的代碼難道就不能給我一個贊嘛。
複製代碼
相關文章
相關標籤/搜索