html で onChange イベントを使用して、以下の JavaScript を起動しています。
単純な alert("working"); を実行して、onChange イベントが JavaScript に到達していることを確認しました。そしてIEはアラートを発しましたが、私が望む実際のコードは機能していないようです。(FF、Chrome、Safari、iPad、および Android で機能します)。
この関数は、onchange を介して渡された値を取得し、それを変数として php ファイルに送信します。php ファイルは、取得した変数を取得して DB に挿入します。他のすべてのブラウザーで動作するため、php の部分は問題ではないと思います。誰にも洞察力がありますか?
コード:
function showUser(str)
{
if (str=="")
{
document.getElementById("txtHint").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("txtHint").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","http://testest.com/itgoeshere.php?q="+str,true);
xmlhttp.send();
}
IEの場合はそうしなければならないので、各タグに値属性を明示的に追加する必要があることを認識していますが、これを行ったと思います...
select ステートメントがどのように見えるかの例を次に示します...
<select name="date" onChange="showUser(this.value)">
<option value="">---</option>
<option value="1">Past hour</option>
<option value="2">Past week</option>
<option value="3">Past month</option>
<option value="4">Past year</option>
</select>