代码如下: 定义array数组
var array = [1,2,3];
$.ajax({
url:"cart.php?act=delcart",
async:false,
type:'POST',
data:{array:array},
dataType:'json',
traditional: true,
success:function(data){
alert(data)
},
error:function(){
alert("#");
}
});
当我们用ajax传递时,我们用浏览器开发工具查看头信息时发现我们定义的数组并没有被正确的传递
解决方法:JSON.stringify()方法将一个 JavaScript 值转换为一个 JSON 字符串。
此时
var array = [1,2,3];
$.ajax({
url:"cart.php?act=delcart",
async:false,
type:'POST',
data:{array:JSON.stringify(array)},
dataType:'json',
traditional: true,
success:function(data){
alert(data)
},
error:function(){
alert("#");
}
});
然后我们在ajax请求头可以看到我们的参数:
这样我们的数组数据就能传到后台,但是要注意的是在后台我们要用json_decode()来解析post过来的array
如果不解析,那么array传到后台时,还是‘ [“6”,”5”,”4”] ’。