将序列化表单与数组合并

时间:2014-04-09 15:40:24

标签: php jquery ajax

我有一个表单,我将它与ajax一起发送到服务器。 像这样:

$.ajax({
   url: form.attr('action'),
   type: 'POST',
   data: form.serialize(),
   dataType : 'json',
   success: function(data){
   }
});

我在服务器上收到类似

的内容
Array
(
    [forms_element_1] => 'some value 1',
    [forms_element_2] => 'some value 2',
    [forms_element_3] => 'some value 3'
)

现在我需要在这个表单中添加数组本身的全局变量。

var statuses = [5,7,3];

我需要从服务器端的POST接收类似

的内容
Array
(
    [forms_element_1] => 'some value 1',
    [forms_element_2] => 'some value 2',
    [forms_element_3] => 'some value 3',
    [statuses] => Array
    (
         [0] => 5,
         [1] => 7,
         [2] => 3
    )
)

如何在jQuery中实现这一目标?

1 个答案:

答案 0 :(得分:1)

将其转换为带有$.param的参数字符串,然后将其附加到序列化表单(也是一个参数字符串)。

data: form.serialize() + "&" + $.param({statuses:[5, 7, 3]}),