使用Ajax方式提交异步请求,并得到后端响应(JSON格式)

前端JS代码

var btn = document.getElementById("btn");
    btn.onclick = function () {
        // 原声Ajax实现
        var xhr = getxhr();
        xhr.open("post", "ShoppingMall.php");
        xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
        // 构建符合JSON格式的字符串
        var user = '{"name":"daixiansheng","pwd":"123456"}';
        xhr.send("user="+user);
        xhr.onreadystatechange = function () {
            if (xhr.readyState == 4 && xhr.status == 200) {
                var data = xhr.responseText;
                // 使用eval()函数将接收到的符合json格式的字符串转换为json格式的数据
                var json=eval("("+data+")");
                console.log(json);
            }
        };
    };

    function getxhr() {
        var xhr = null;
        if (window.XMLHttpRequest) {
            xhr = new XMLHttpRequest();
        } else {
            xhr = new ActiveXObject('Microsoft.XMLHttp');
        }
        return xhr;
    }

后端PHP代码

<?php
    $user=$_POST['user'];
//    var_dump($user);
//    解析json格式数据为数组格式
    $json_user=json_decode($user,true);
//    var_dump($json_user['name']);
//    echo $user;

//    响应数据符合json格式的字符串
//    1.手动方式
//    echo '{"name":"Sharing","pwd":"123456"}';
//    2.使用json_encode()函数将数组转换为符合JSON格式的字符串
    echo json_encode($json_user);
?>

 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值