url中传递json数组 location.href传送数组

本文介绍如何在JavaScript中创建二维数组,并通过`location.href`和Ajax方式传递给PHP。示例中展示了如何处理数组数据,以及在成功操作后通过URL参数跳转并传递数组。注意避免因数据过多导致URL过长或内存不足的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

之前用这个传递过商品信息,由于内容过多导致的url过长或内存不足会报错,一定要把没用的数据从js数组中删了!

 

php端接收前端传数组代码:$data = json_decode($data);

第一种location.href传递数组data

location.href = "1.php?data=" + escape(JSON.stringify(data));

第二种ajax传递数组data

// 声明js二维数组 每个数组都是四个值的一维数组
        var data = new Array();  //先声明一维
        for(var k=0;k<obj.length;k++){    //一维长度为i,i为变量,可以根据实际情况改变
            data[k]=new Array();  //声明二维,每一个一维数组里面的一个元素都是一个数组;
            for(var j=0;j<4;j++){   //一维数组里面每个元素数组可以包含的数量p,p也是一个变量;
                data[k][j]="";    //这里将变量初始化,我这边统一初始化为空,后面在用所需的值覆盖里面的值
            }
        }

        // 循环对象 对数组进行赋值
        for (var i = obj.length - 1; i >= 0; i--) {

            // 吧数据传给data
            data[i][0]=1
            data[i][1]=2
            data[i][2]=3
            data[i][3]=4
        }

        data = JSON.stringify(data)
        $.ajax({
            type: 'POST',
            url: "{:url('Purchase/cart2')}",
            data:  {data:data},
            traditional: true,
            dataType: 'json',
            success: function (msg) {
            if (msg.code==0) {

//我这边需要吧多个商品通过ajax添加入库然后在跳转到下个页面,俩个地方都需要传递数组
                location.href="{:url('Purchase/cart3')}?data="+escape(JSON.stringify(msg.data))
            }else{
                alert(msg.msg)
            }

            },
            error:function(msg){
            alert('错误,请刷新页面重试')
            }
        });

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值