如何在ajax请求中将数组js数组发送到php页面

时间:2015-05-22 07:54:51

标签: javascript php ajax

问题是我想将ajax数组发送到php,我可以将它用于不同的处理,实际上我的html页面中有很多文本字段,我已经为它们指定了名称,我希望将此名称数组发送到我的php页面通过ajax(仅限JavaScript)我会收到这个数组,并将它用于不同的目的。

以下是我的示例HTML代码:

<input type="text" name="top_phone_cal2" class="form-control"  >
<input type="text" name="top_phone_cal2" class="form-control"  >
<input type="button" onclick="dis_phone_call2_top()" class="form-control"  >

JavaScript代码:

  function dis_phone_call2_top()
  {
    var x =document.getElementsByName('top_phone_cal2');
    var top_phone_cal2 = [];     
    for(i=0;i<x.length;i++)
    {
      top_phone_cal2[i]=x[i].value;  
      //alert("cars value: "+top_phone_cal2[i]+" loop value: "+x.length);
    }   
    var xmlhttp = new XMLHttpRequest();
    xmlhttp.onreadystatechange = function() 
    {
      if (xmlhttp.readyState == 4 && xmlhttp.status == 200) 
      {
        var bbb=xmlhttp.responseText;alert(bbb);                                 
      }
    }       
    xmlhttp.open("GET", "intervention_phonecal2_insrt.php?value="+top_phone_cal2, true);
    xmlhttp.send(); 
  }

这是php代码:

<?php
  $top_phone_cal2= $_REQUEST["value"];        
  echo $top_phone_cal2;  
?>

这段代码中的问题是通过这段代码我无法在php页面中接收数组而不是这个我在php页面中收到变量 例如:
如果在第一个文本字段中我输入了John,而在第二个文本字段中我输入了lincon,那么在页面中它会显示为johnlincon,但我想显示我喜欢这个echo $top_phone_cal2[0] = john和echo $top_phone_cal2[1] = lincon 请告诉我怎么做?

2 个答案:

答案 0 :(得分:1)

试试这个:

http://someUrl/File...

我希望它有所帮助。

答案 1 :(得分:0)

使用此代码:

function dis_phone_call2_top()
{
  var x =document.getElementsByName('top_phone_cal2');
  var top_phone_cal2 = [];
  for(i=0;i<x.length;i++)
  {
    top_phone_cal2[i]= x[i].value;
    //alert("cars value: "+top_phone_cal2[i]+" loop value: "+x.length);
  }
  var value_str = 'value[]=' + top_phone_cal2.join('&value[]=')
  var xmlhttp = new XMLHttpRequest();
  xmlhttp.onreadystatechange = function()
  {
    if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
    {
      var bbb=xmlhttp.responseText;alert(bbb);
    }
  }
  xmlhttp.open("GET", "intervention_phonecal2_insrt.php?"+value_str, true);
  xmlhttp.send();
}

说明:你应该在GET参数中发布正确的值格式。 PHP将此值收集到$_GET['value']变量。