溫馨提示×

ajax深入淺出怎樣實現異步請求

小樊
102
2024-10-23 08:29:16
欄目: 編程語言

《AJAX深入淺出》是一本關于AJAX編程的經典教材。在這本書中,異步請求的實現主要依賴于JavaScript中的XMLHttpRequest對象。以下是一個簡單的示例,展示了如何使用XMLHttpRequest對象實現異步請求:

  1. 創建一個HTML文件,如ajax_example.html,并在其中添加以下內容:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>AJAX 異步請求示例</title>
    <script src="ajax_example.js"></script>
</head>
<body>
    <button onclick="sendRequest()">發送請求</button>
    <div id="result"></div>
</body>
</html>

在這個示例中,我們創建了一個按鈕,當點擊該按鈕時,會觸發sendRequest函數。同時,我們還有一個<div>元素,用于顯示請求的結果。

  1. 創建一個JavaScript文件,如ajax_example.js,并在其中添加以下內容:
function sendRequest() {
    // 創建一個新的XMLHttpRequest對象
    var xhr = new XMLHttpRequest();

    // 設置請求的類型和URL
    xhr.open('GET', 'https://jsonplaceholder.typicode.com/todos/1', true);

    // 設置請求完成時的回調函數
    xhr.onload = function() {
        if (xhr.status >= 200 && xhr.status < 400) {
            // 請求成功,將返回的數據解析為JSON格式,并在頁面上顯示
            var data = JSON.parse(xhr.responseText);
            document.getElementById('result').innerHTML = data.title;
        } else {
            // 請求失敗,顯示錯誤信息
            document.getElementById('result').innerHTML = '請求失敗,狀態碼:' + xhr.status;
        }
    };

    // 設置請求錯誤時的回調函數
    xhr.onerror = function() {
        document.getElementById('result').innerHTML = '請求出錯';
    };

    // 發送請求
    xhr.send();
}

在這個示例中,我們首先創建了一個新的XMLHttpRequest對象,然后設置了請求的類型(GET)、URL(https://jsonplaceholder.typicode.com/todos/1)以及是否異步(true)。接下來,我們設置了請求完成時的回調函數,用于處理返回的數據。如果請求成功,我們將返回的數據解析為JSON格式,并在頁面上顯示;如果請求失敗,我們顯示錯誤信息。最后,我們調用xhr.send()方法發送請求。

當用戶點擊“發送請求”按鈕時,瀏覽器會發起一個異步請求,并在請求完成后執行相應的回調函數。這樣,我們就可以在不刷新整個頁面的情況下,實現與服務器的數據交互。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女