-1

嗨,我对 Web 开发真的很陌生。我想知道如何在 php 中访问 ajax 返回值。当我从下拉列表中选择一个选项时,我会使用 ajax 获得另一个下拉列表。但我想使用 php 使用页面上的值。

      Practice Name : 
    <select name="practiceName" id="practiceName" onchange="showAssociate(this.value)">
    <option value="">Select an option</option>
 <option value="abc">abc</option>
 <option value="xyz">xyz</option>


    </select>
<p>

<div id="associate">
</div>

ajax代码是:

    function showAssociate(str)
{
if (str=="")
{
document.getElementById("associate").innerHTML="";
return;
} 
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
 }
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("associate").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","getAssociate.php?q="+str,true);
xmlhttp.send();
}

ajax 在 div 'associate' 中返回所需的下拉框和值,但是在提交表单时如何在 php 中使用这些值?我只需要在屏幕上的某个地方访问并回显它。请帮忙。提前致谢。

4

1 回答 1

0

如果您希望通过 ajax 检索到的数据与表单一起发送,您可以填充隐藏输入,以便在表单提交中传输数据。

<input type="hidden" id="data" name="data" value="" />

在 Javascript 中,填充其值:

document.getElementById("associate").innerHTML=xmlhttp.responseText;
document.getElementById("data").value = xmlhttp.responseText;

在 PHP 端,当您处理表单提交时,它将出现在$_POST['data'](假设表单的方法是POST)。

于 2013-01-08T17:40:17.490 回答