当设置数据格式为json时,Jquery ajax只能传递json对象到后端进行数据交换。
当使用ajax传递二维数组到后端时,要讲其转换为json。
-
var selectProduct; //一个二维数组
-
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); // 二维对象 -
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