XML HttpRequest
所有現代瀏覽器都有內置的 XMLHttpRequest 對象,用于從服務器請求數據。
XMLHttpRequest 對象
XMLHttpRequest 對象可用于從 Web 服務器請求數據。
XMLHttpRequest 對象是開發者的夢想,因為您能夠:
- 更新網頁 - 在不重新加載頁面的情況下
- 從服務器請求數據 - 在頁面已加載后
- 從服務器接收數據 - 在頁面已加載后
- 向服務器發送數據 - 在后臺
XMLHttpRequest 實例
當您在下面的輸入字段中鍵入字符時,XMLHttpRequest 會被發送到服務器,并返回一些名字建議(從服務器):
實例
請在下面的輸入字段中輸入名字:
Name: Suggestions: 本教程的 AJAX 章節中對上面的示例進行了解釋。發送 XMLHttpRequest
下面是使用 XMLHttpRequest 對象的常見 JavaScript 語法:
實例
var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { // Typical action to be performed when the document is ready: document.getElementById("demo").innerHTML = xhttp.responseText; } }; xhttp.open("GET", "filename", true); xhttp.send();
例子解釋
上面的例子中的第一行創建了一個 XMLHttpRequest 對象:
var xhttp = new XMLHttpRequest();
onreadystatechange
屬性指定每次 XMLHttpRequest 對象的狀態發生變化時要執行的函數:
xhttp.onreadystatechange = function()
當 readyState
屬性為 4 且 status
屬性為 200 時,響應就緒:
if (this.readyState == 4 && this.status == 200)
responseText
屬性以文本字符串形式返回服務器響應。
文本字符串可用于更新網頁:
document.getElementById("demo").innerHTML = xhttp.responseText;
您將在本教程的 AJAX 章節中學到有關 XMLHttpRequest 對象的更多內容。