Ajax 中传递 JSON 数据可以使用两种方法:将 JSON 对象转换为字符串后传递,或者直接传递 JSON 对象。

1. JSON 对象转换为字符串后传递

JSON.stringify() 方法可以将 JSON 对象转换为字符串。在 Ajax 请求中,可以将转换后的字符串作为请求的参数传递给服务器。

<script>
    var data = {name: "张三", age: 20};
    var jsonData = JSON.stringify(data);
    $.ajax({
        type: "POST",
        url: "xxx",
        data: {jsonData: jsonData},
        success: function(response) {
            // 处理服务器返回的响应数据
        }
    });
</script>
HTML

2. 直接传递 JSON 对象

Ajax 请求中的 data 参数可以直接接收 JSON 对象,无需转换为字符串。服务器可以直接处理接收到的 JSON 对象。

<script>
    var data = {name: "李四", age: 25};
    $.ajax({
        type: "POST",
        url: "xxx",
        data: data,
        dataType: "json",
        success: function(response) {
            // 处理服务器返回的响应数据
        }
    });
</script>
HTML

3. 服务器端接收 JSON 数据

在服务器端,可以使用不同的编程语言来接收 JSON 数据。以下是使用 PHP 的例子。

<?php
    $jsonData = $_POST['jsonData']; // 获取以字符串形式传递的JSON数据
    $data = json_decode($jsonData); // 将JSON字符串解析为对象或数组
    // 处理接收到的JSON数据
?>
PHP

通过上述方法,可以在 Ajax 请求中传递 JSON 数据,服务器端也可以接收并处理这些数据。这样可以实现前端与后端之间的数据交互。