2014-01-16 112 views
0

我想通过ajax发布两个数组。其中之一是多维的。通过ajax发送两个数组post

这是我的代码:

var values = $('.formularioempresa').serialize(); 
contactos = $('#agregarcontactos').data('contactos')[0]; 


      $.ajax({ 
       url: "forms/procesar_forms.php", 
       type: "post", 
       data: values+contactos, 
       success: function(result){ 
        if (result == '1') 
         $('#error').show(500).delay(3000).hide('slow'); 
        else { 
         $('#confirmacion').show(500).delay(3000).hide('slow'); 
        } 
       }, 
       error:function(){ 
        alert("failure"); 
       } 
      }); 

值仅仅是输入和contactos阵列是一个多维即来源于此片的码(不完全):

<form class="formulariocontacto"> 
<input type="text" id="nombre" name="nombre[]" class="required form-control" /> 
<input type="text" id="apellido" name="apellido[]" class="required form-control" /> 
<input type="text" id="apellido2" name="apellido2[]" class="required form-control" /> 
<input type="text" id="telefonoc" name="telefonoc[]" class="required form-control" /> 
<input type="text" id="emailc" name="emailc[]" class="required form-control" /> 
<input type="text" id="cargo" name="cargo[]" class="required form-control" /> 
</form> 

和jQuery的为此

var values = $('form#formulariocontacto :input').serialize(); 
$('#agregarcontactos').data('contactos',[]); 
$('#agregarcontactos').data('contactos').push(values); 

我获得2个数组,但我不知道如何组合它通过aja发布它X。

谢谢您的帮助,对不起我的英文不好:/

回答

2

您需要嵌套数组中的对象:

当然,这意味着这两个实际上应该是数组。我建议使用serializeArray而不是serialize,然后你会有像上面那样干净地嵌套的数组。

var values = $('.formularioempresa').serializeArray(); 
+0

这真的帮了我。谢谢 :) – albertoperojo

0

,把它们放进一个数组,并使用join&结合他们

data: [values,contactos].join('&'),