jquery ajax向后端传二维数组

余生颓废 提交于 2020-02-25 23:31:28

当设置数据格式为json时,Jquery ajax只能传递json对象到后端进行数据交换。

当使用ajax传递二维数组到后端时,要讲其转换为json。

  1. var selectProduct; //一个二维数组

  2. var newSelectProduct = { }; // 定义一个空对象
    for (var i = 0; i < selectProduct.length; i ++) { // 遍历二维数组中的每一个成员
    newSelectProduct[i] = { };
    newSelectProduct[i][‘id’] = selectProduct[i][‘id’];
    newSelectProduct[i][‘num’] = selectProduct[i][‘num’];
    }
    console.log(newSelectProduct); // 二维对象

  3. newSelectProduct = JSON.stringify(newSelectProduct);
    console.log(newSelectProduct); // json 对象

{“0”:{“id”:“2”,“num”:7},“1”:{“id”:“1”,“num”:42}}

这样就可以通过ajax将数据传给后端了

4。 后端接收到的是是json字符串,

‘{“0”:{“id”:“1”,“num”:42},“1”:{“id”:“2”,“num”:7}}’ (length=48)

要在后端用json_decode,将其转化为对象

object(stdClass)[19]
public ‘0’ =>
object(stdClass)[20]
public ‘id’ => string ‘2’ (length=1)
public ‘num’ => int 7
public ‘1’ =>
object(stdClass)[21]
public ‘id’ => string ‘1’ (length=1)
public ‘num’ => int 42

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!