使用XmlHttpRequest传递请求值

时间:2013-05-10 19:36:42

标签: php javascript ajax xmlhttprequest

我有一个表单提交的用户名和其他两个元素,我可以通过id在ajax .js文件中获取它们。现在我希望将这三个元素传递给php文件。我可以创建三个变量,每个变量分配给新的XmlHttpReqest,例如。 var XmlHttpusername = new XmlHttpRequest()。

现在我如何将这三个请求值传递给单个php文件,在该文件中我必须比较数据库中的这三个内容并生成适当的消息。 我的ajax代码如下:

 function GetXmlHttpObject()
 {
        if (window.XMLHttpRequest)
          {
  return new XMLHttpRequest();
          }
        else if (window.ActiveXObject)
          {
// code for IE6, IE5
  return new ActiveXObject("Microsoft.XMLHTTP");
          }
        return null;
 }

// User name function 
var XMLHttpUsername=false;
var XMLHttpSec_q=false;
var XMLHttpSec_a=false;
function UserAvail(resp)
{
   XMLHttpUsername=GetXmlHttpObject();   
   if (XMLHttpUsername==null)
   {
      alert ("Your browser does not support AJAX!");
      return;
   }
   XMLHttpUsername.open("GET","checkUser.php?user="+resp,true);
   XMLHttpUsername.onreadystatechange = function(){
      if (XMLHttpUsername.readyState==4 && XMLHttpUsername.status == 200){
      document.getElementById('userChange').innerHTML=XMLHttpUsername.responseText; 
      }  
   }
   XMLHttpUsername.send(null); 
}

function InputCheck(resp)
{
   XMLHttpUsername=GetXmlHttpObject();
   XMLHttpSec_q=GetXmlHttpObject();
   XMLHttpSec_a=GetXmlHttpObject(); 

   if (XMLHttpInputs==null||XMLHttpSec_a==null||XMLHttpSec_q==null){
     alert ("Your browser does not support AJAX!");
      return;
     }
   XMLHttpSec_a.open("GET","checkUser.php?user="+user,true);
   XMLHttpSec_a.onreadystatechange = function(){
   if (XMLHttpSec_a.readyState==4 && XMLHttpUsername.status == 200){
      document.getElementById('submitMain').innerHTML=XMLHttpSec_a.responseText; 
   }  
  }
  XMLHttpSec_a.send(null); 
}

1 个答案:

答案 0 :(得分:0)

您可以在一个AJAX请求中将这三个值中的每一个作为参数传递:

XMLHttpSec_a.open("GET","checkUser.php?parameter1=" + parameter1 + "&parameter2=" + parameter2 + "&parameter3=" + parameter3);

无需为发送多个数据单独创建单独的请求。