0

我有一个 xmlhttp/php 问题。我有一个下拉菜单,人们可以在其中选择自治市。然后我想将该自治市内的可能选项列表返回到二级下拉菜单。

人们首先选择一个自治市(下面的html代码):

<select name="pszplaats" id="gemeente" onchange="fdisplay();loadXMLDoc(this.value)">
    <?php while($row=mysql_fetch_array($selectgem)){?>
    <option value="<?php echo $row['Gemeente']; ?>"><?php echo $row['Gemeente'];?>
    </option>
     <?php } ?>
    </select>

loadXMLDoc 是应该将此答案发送到(php-)服务器并检索与该市镇中的名称匹配的名称列表的函数。到目前为止,我相关的 java/xml/ajax 代码是这样的:

function loadXMLDoc() {
      var xmlhttp;
      gem=document.getElementById("gemeente").value;
      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("test").innerHTML=xmlhttp.responseText;
                 }
           }
      xmlhttp.open("POST","http://www.doenwatikkan.nl/jeroen/dynamic.php",true);
      xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
      xmlhttp.send();
      alert(gem)

           }

Alert(gem) 显示选定的选项,所以我知道至少这是可行的。检索正确值的 php 是这样的:

$gem=$_POST["pszplaats"];
$gennam=mysql_query("SELECT * FROM psz WHERE Gemeente=$gem");
echo $gennam["$gem"];

现在问题在于二级下拉菜单的填充

<select name="psznaam" id="test" style="display:none">
<?php while($row=mysql_fetch_array($selectall)){?>
<option value="<?php echo $row['NaamPSZ']; ?>"><?php echo $row['NaamPSZ'];?>
</option>
<?php } ?>
</select>

java函数完成后,下拉菜单完全为空。谁能告诉我如何才能在该菜单中实际获取相关数据?任何帮助将非常感激!

4

1 回答 1

0

您还没有发送gem网址。尝试xmlhttp.open("POST","http://www.doenwatikkan.nl/jeroen/dynamic.php?gem="+gem,true); 在您的dynamic.php页面中通过$_POST["gem"]

于 2013-02-16T12:49:22.710 回答