我有这个数组
var Age=[$(".AJcountry").find(".focus").html()];
和这个AJAX
$.ajax({
type: "GET",
url: '../connect.php',
data: "CountS=" + Age,
success: function (dataa)
{
alert(dataa);
}
});
但它只返回最后选择的项目。如何向PHP中的所有内容发送
答案 0 :(得分:1)
使用循环
var Age=[];
$(".AJcountry").find(".focus").each(function(){
Age.push($(this).html());
});
在ajax中:
data: {CountS:Age},
在php中你做:
echo $_GET['CountS'][0];//get the first
或循环
答案 1 :(得分:0)
如果您为data
的{{1}}属性提供了一个对象,那么jQuery将为您序列化它:
$.ajax
另请注意,当您将data: { CountS: Age }
元素的html()
值放入数组时,该数组始终只包含一个字符串元素,因此数组本身在这种情况下似乎完全是多余的。
答案 2 :(得分:0)
将数组转换为JSON,如下所示:
var json = JSON.Stringify(Age);
然后像你正在做的那样通过AJAX发送它:
data: {CountS: Age}
在后端将JSON转换回如下数组:
$json = json_decode($_GET['CountS']);
此方法在传输数据之前将数据转换为非常小的文本字符串。 PHP后端然后将其转换回数组。此方法也适用于JavaScript中的大多数对象。您可以阅读有关JSON here
的更多信息