ajax原理:
客戶端通過瀏覽器的內建物件xmlhttprequest來傳送非同步請求,當伺服器返回響應時,會呼叫先前註冊的**函式,在**函式中程式設計客棧可以使用j**ascript操作dom來更新頁面,非同步請求不會阻塞客戶端程式設計客棧的操作,達到頁面無法重新整理就可以更新資料的效果。
非同步請求的封裝:
複製** **如下:
var xhr=false;
//step1:建立乙個相容瀏覽器各個版本的xmlhttprequest物件
} //step2:設定**函式
xhr.onreadystatechange = mycallback;
//step3:建立乙個非同步請求
xhr.open("method", "url", true);
//如果是post:要設定請求訊息體資料的編碼方式
xhr.setreqptjgmuestheader("content-type","application/x-www-form-urlencoded");
//step4:傳送非同步請求
xhr.send(content); //如果是get方式 content為null,若為post,content為「名=值」對。
本文標題: ajax的工作原理以及非同步請求的封裝介紹
本文位址:
詳解Ajax請求(二) 非同步請求原理的分析
我們知道,在同步請求模型中,瀏覽器是直接向伺服器傳送請求,並直接接收 處理伺服器響應的資料的。這就導致了瀏覽器傳送完乙個請求後,就只能幹等著伺服器那邊處理請求,響應請求,在這期間其它事情都做不了。這就像是你到了乙個新城市去找房子住,你可以自己去找,在 上或者是街頭小廣告上去了解 資訊,找合適自己的那...
Ajax的非同步請求
ajax的分為四個步驟 建立ajax對x象 繫結監聽函式 eg xhr.onreadystatechange function else 建立連線 xhr.open method,url,boolean 第乙個表示請求方式,第二個表示請求位址,第三個引數為false表示為同步,true為非同步 其中...
ajax的非同步請求
form1 attr action url var formdata form1 serialize ajax success function returndata else layer.close layer.load 顯示的是乙個載入中的動畫 關於引數,layer.load 例子1 layer...