Javascript 通过AJAX向PHP发送数组
我声明我的数组:Javascript 通过AJAX向PHP发送数组,javascript,php,jquery,Javascript,Php,Jquery,我声明我的数组: p.myArray = []; 我将以下内容添加到循环中的数组: self.myArray.push($(this).data('id')); // [1,2,3,4] 然后,我通过AJAX通过POST将其发送到PHP: $.ajax({ url: '/gateway', data: {data: self.myArray}, dataType: 'json', type: 'POST', }) 我想知道,我是否需要一个密钥/值对?我可
p.myArray = [];
我将以下内容添加到循环中的数组:
self.myArray.push($(this).data('id')); // [1,2,3,4]
然后,我通过AJAX通过POST将其发送到PHP:
$.ajax({
url: '/gateway',
data: {data: self.myArray},
dataType: 'json',
type: 'POST',
})
我想知道,我是否需要一个密钥/值对?我可以通过阵列发送吗?它需要序列化吗?将对象传递给
数据将导致jQuery为您序列化它
该阵列将在$\u POST['data'][]中提供。
如果你在不同的事情上不使用相同的名字,那就更清楚了
data: { theArray: self.myArray },
转到:
$_POST['theArray'][]
请注意,如果您使用的是dataType:'json'
,您的PHP脚本将必须返回json序列化数据,否则jQuery将忽略响应
i、 e:
您确实需要一个键/值对,但您正在发送一个。键是数据
,值是数组。您的代码应该可以工作-您对它有问题吗?没有问题,我只是想知道是否必须有一个键/值对,以及是否需要序列化数组?jQuery将为您序列化数组,因此您无需担心。如果您使用静态输入,请使用$('#formid').serialize()代码>,如果使用动态变量,则必须设置数组中的每个键
$myArray = $_POST['myArray'];
echo json_encode($myArray);