使用$ .get和$ .param()将数组作为参数从jQuery传递给php处理程序

时间:2011-08-11 00:20:02

标签: php jquery arrays

我需要将jQuery中的数值数组传递给php文件。我使用以下行在我的代码中填充此数组:

Area_Array.push({name: 'A[]', value: ui.value});

然后我序列化数组以在URL中使用它

$.param(Area_Array);

我可以看到使用以下方法正确构建了数组:

alert(decodeURIComponent($.param(Area_Array)));
例如,

返回以下内容:

A[]=0&A[]=1&A[]=2

这对我来说很好,但我现在不知道如何将它插入我的$ .get中,这也是发送另一个参数:

$.get("some.php", { b1 : 0, b2 : 5, b3: 20, b4 : 1},function(foo){});

但我希望我构建的URL具有以下结构:

http://somehost/some.php?b1=0&b2=5&b3=20&b4=1&A[]=0&A[]=1&A[]=2

你能帮我吗?

谢谢!!! :)

1 个答案:

答案 0 :(得分:0)

我建议您直接将值添加到数组

Area_Array.push(ui.value);

然后将其设置为参数:

$.get("some.php", {b1: 0, b2: 5, b3: 20, b4: 1, A: Area_Array},...);

无需直接致电$.param。例如。上面的设置会生成此查询字符串(如果Area_Array[1, 2, 3]):

b1=0&b2=5&b3=20&b4=1&A[]=1&A[]=2&A[]=3

jQuery正确地处理数组编码。