我想用AJAX和表单的POST方法发送数据,发送一个表单对象的值成功了,可我的表单项有多个,其他的怎么发送?下面是我现在的代码,只能发送一项。
//验证浏览器是否支持AJAX
function GetXmlHttpObject()
{
  var xmlHttp=null;
  try
    {
    xmlHttp=new XMLHttpRequest();
    }
  catch (e)
    {
    try
      {
      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
  xmlHttp.setRequestHeader("Content-Type","text/xml");
  xmlHttp.setRequestHeader("Charset","utf-8");
      }
    catch (e)
      {
      xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
    }
return xmlHttp;
}
function add()
{
  var parcelName=document.getElementById("parcelName").value, 
  regionname=document.getElementById("regionname").value;

 
//验证
if (parcelName==""){
alert("片区名称不能为空");
return false;
}
 
if (regionname==""){
  alert("行政区域不能为空");
return false;
}

//发送数据
  var postStr = "parcelName="+ parcelName;
 var url = "add2.php"; var ajax = GetXmlHttpObject();
 ajax.open("POST", url, true);
 ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
 ajax.send(postStr);
 ajax.onreadystatechange = function() {
  if (ajax.readyState == 4 && ajax.status == 200) {       
alert(ajax.responseText);//显示返回值
  }
 }
}
//取消函数
function cancel(){
window.location='add.php';
}

解决方案 »

  1.   

    不是很了解楼主说的多项指什么
    AJAX传值你这里已经正确了
     var postStr = "parcelName="+ parcelName; 
    这个字符串可以再增加别的参数和值:
     var postStr = "parcelName="+ parcelName+"&regionname="+regionname; 
    不知道你说的是不是这个问题。
      

  2.   

     var postStr = "parcelName="+ parcelName + "&other=" + other;
    替换other,有多少个就按这种形式加就OK了.
      

  3.   

    var postStr = 在这里开列待提交的变量名和值(名=值)并用‘&’连接; 
    注意:值应作url编码