私は過去数日間、いくつかのコードと格闘してきましたが、進歩はありませんでした。私は助けが必要です。これが私がやろうとしていることです:
- 2つのドロップダウンリストの最初のリストに手動で入力します
- 最初の値の選択された値を取得し、それを使用してデータベースにクエリを実行し、2番目のドロップダウンにクエリの結果を入力します。
- ボタンを使用して別の関数をトリガーし、PDFを生成します。
私は自分のサイトにこのコードを持っていて、働いています。欠点は、FFとChromeでのみ機能することです。IEにドロップダウンリストを入力できません。テストのために、IEが2番目のドロップダウンリストにデータを入力するかどうかを確認するために、コードを実質的に何も削除しましたが、実際には表示しません。以下は、テストページのコードです。
test.htm:
<html><head>
<script type="text/javascript">
function showCMB2(str)
{
if (str=="")
{
document.getElementById("cmb2").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("cmb2").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","test.php?q="+str,true);
xmlhttp.send();
}
</script>
</head>
<body>
<form>
<select name="cmb1" id="cmb1">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
</select>
</form>
<br />
<input type="button" value="Retrieve Data"
OnClick="showCMB2(cmb1.options[cmb1.selectedIndex].value)">
<br><br><br>
<span name="cmb2" id="cmb2"></span>
</body>
</html>
test.php:
<?php
echo '<select name="cmb2" id="cmb2">';
echo '<option value="cmb2">This is test</option>';
echo '</select>';
?>
私が言ったように、これはFFとChromeでうまく機能しますが、IEでは機能しません。IDがcmb2のtest.htmのスパンを作成してみましたが、動作に変化はありませんでした。誰かが何か洞察を提供できますか?これはとても簡単なようです。