如何将表单中的变量传递到ajax脚本中的php页面?

时间:2012-10-02 03:21:20

标签: php javascript ajax

我有这样的表格:

<form onsubmit="serverconnect('Div1', 'query.php'); return   
false;" 
Minimum Discount: <br />
<input type="radio" value="20%" name="discount" /> 20% <br />
<input type="radio" value="15%" name="discount" /> 15% <br />
<input type="radio" value="10%" name="discount" /> 10% <br />
<input type="radio" value="5%" name="discount" /> 5% <br />
<input type="submit" value="Refine Search" />
</form>

在提交时,表单调用以下ajax脚本

<script language="javascript" type="text/javascript">


var xmlhttp = false;


if (window.XMLHttpRequest)
{
    xmlhttp = new XMLHttpRequest(); 
}
else if (window.ActiveXObject)
{
    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}


function serverconnect(divID, datalocation)
{
var1=$clickvalue;
if(xmlhttp)
{
    var obj = document.getElementById(divID);
    xmlhttp.open("GET", datalocation);

    xmlhttp.onreadystatechange = function()
    {
        if (xmlhttp.readyState == 4 &&
        xmlhttp.status == 200)
        {
        obj.innerHTML = xmlhttp.responseText;
        }
    }
    xmlhttp.send(null); 
}

}
</script>

我需要将表单数据传递到我的query.php页面(这是ajax的输出),以修改其输出,而不使用jquery库。

那么有没有办法将表单数据通过ajax函数传递给函数调用的页面?

1 个答案:

答案 0 :(得分:4)

是的,您可以使用ajax传递表单数据。在使用GET方法时,您只需将数据嵌入此页面

<input type="radio" value="20%" name="discount" id="discount" /> 20% <br />


var obj = document.getElementById(divID);
var disc = document.getElementById("discount");
xmlhttp.open("GET", datalocation + "?disc="+disc);

并在query.php中使用$_GET['disc']获取get数据。