Ajax原理: 客戶端通過浏覽器的內置對象XMLHttpRequest來發送異步請求,當服務器返回響應時,會調用先前注冊的回調函數,在回調函數中可以使用javascript操作DOM來更新頁面,異步請求不會阻塞客戶端的操作,達到頁面無法刷新就可以更新數據的效果。
異步請求的封裝: 復制代碼 代碼如下:
var xhr=false;
//step1:創建一個兼容浏覽器各個版本的XMLHttpRequest對象
if (window.XMLHttpRequest) { //IE7+, Firefox, Chrome, Opera, Safari
xhr = new XMLHttpRequest();
} else {
if (window.ActiveXObject) { //IE浏覽器
xhr = new ActiveXObject("Microsoft.XMLHTTP");//IE5+
}
}
//step2:設置回調函數
xhr.onreadystatechange = myCallback;
//step3:創建一個異步請求
xhr.open("method", "url", true);
//如果是post:要設置請求消息體數據的編碼方式
xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//step4:發送異步請求
xhr.send(content); //如果是get方式 content為null,若為post,content為“名=值”對。