xmlhttp/php に問題があります。自治体を選択できるドロップダウン メニューが 1 つあります。次に、その自治体内で可能なオプションのリストを 2 番目のドロップダウン メニューに返します。
人々は最初に自治体を選択します (以下の 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 関数が終了すると、ドロップダウン メニューは完全に空になります。そのメニューで関連データを実際に取得する方法を誰か教えてもらえますか? どんな助けでも大歓迎です!