解释AJAX中回调函数的作用

解释AJAX中回调函数的作用

AJAX(Asynchronous Javascript and XML)是用来创建网络应用程序的异步的。它使用XMLHttpRequest向服务器传输数据。AJAX总是在Request和Response上工作,这意味着AJAX将从服务器上请求任何东西,而服务器将把Response反馈给AJAX。我们有一个内置的Javascript对象,称为 “XMLHttpRequest”,用于发送响应和从服务器获取请求。

那么AJAX中的回调函数的作用是在从服务器获得任何响应之后。回调函数在完成AJAX请求时被调用。我们将在回调函数中定义如何处理来自服务器的响应。因此,AJAX函数被用来处理我们在发送请求后得到的那些响应。

回调函数在AJAX中的使用有两种类型。

1.Anonymous:使用回调作为匿名函数的步骤。

  • 创建一个新的XMLHttpRequest。
  • 使用XMLHttpRequest的open()方法来指定请求。
  • 使用XMLHttpRequest的send()方法,将请求发送到服务器。
  • 使用XMLHttpRequest()的onreadystatechange属性来使用该响应。
  • 调用一个回调函数,将其与 “onreadystatechange “连接起来,作为一个匿名函数,包含所有将利用我们从服务器得到的响应的代码。

示例:

<!DOCTYPE html>
<html lang="en">
  
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content=
        "width=device-width, initial-scale=1.0">
    <title>Anonymous Callback Function in AJAX</title>
  
    <script>
        function loadInformation() {
  
            // Request
            var request = new XMLHttpRequest();
            request.open("GET", "./data.json");
            request.send();
  
            // Response
            request.onreadystatechange = function () {
                if (this.readyState == 4 
                    && this.status == 200) {
                    document.getElementById("container")
                        .innerHTML = this.responseText;
                }
            }
        }
    </script>
</head>
  
<body>
    <div style="text-align: center;">
        <h1 style="color:green;">
            GeeksforGeeks
        </h1>
          
        <h3>Anonymous Callback function in AJAX</h3>
          
        <button onClick="loadInformation()">
            Click to Load
        </button>
        <br /><br />
          
        <div id="container"></div>
    </div>
</body>
  
</html>

data.json

{
    "name":"Mahesh",
    "age":"29",
    "city":"Mumbai"
}

输出:

解释AJAX中回调函数的作用

2.Named function:使用回调作为Named Function的步骤。

  • 定义一个回调函数,其名称包含将利用我们从服务器得到的响应的所有代码。
  • 创建一个新的XMLHttpRequest。
  • 使用XMLHttpRequest的open()方法来指定请求。
  • 使用XMLHttpRequest的send()方法,将请求发送到服务器。
  • 使用XMLHttpRequest()的onreadystatechange属性来使用该响应。
  • 通过附加 “onreadystatechange “来调用这个命名的回调函数。

示例:

<!DOCTYPE html>
<html lang="en">
  
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content=
        "width=device-width,initial-scale=1.0">
    <title>Named Callback Function in AJAX</title>
  
    <script>
        function callback_fxn() {
            if (this.readyState == 4 && this.status == 200) {
                document.getElementById("container")
                    .innerHTML = this.responseText;
            }
        }
  
        function loadInformation() {
  
            // Request
            var request = new XMLHttpRequest();
            request.open("GET", "./data2.json");
            request.send();
  
            // Response
            request.onreadystatechange = callback_fxn;
  
            function callback_fxn() {
                if (this.readyState == 4 && this.status == 200) {
                    document.getElementById("container").innerHTML =
                        this.responseText;
                }
            }
        }
    </script>
</head>
  
<body>
    <div style="text-align: center;">
        <h1 style="color:green;">
            GeeksforGeeks
        </h1>
          
        <h3>Named Callback Function in AJAX</h3>
        <button onClick="loadInformation()">
            Click to Load
        </button>
        <br /><br />
        <div id="container"></div>
    </div>
</body>
  
</html>

data2.json

{
    "name":"Mansi",
    "age":"21",
    "city":"Kolkata"
}

输出:

解释AJAX中回调函数的作用

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程