1

誰かが私を助けてくれるのではないかと思います。

まず、お詫び申し上げます。これは本当に簡単な修正だと思いますが、答えが見つかりません。

以下のスクリプトを使用して、ドロップダウンメニューを作成しています。値が選択されると、関連するレコードが取得されます。

<html> 
<head>  
<script type="text/javascript"> 

function ajaxFunction(name) 
{ 
var browser = navigator.appName; 
if(browser == "Microsoft Internet Explorer") 
{ 
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 

} 
else 
{// code for IE6, IE5 
xmlhttp=new XMLHttpRequest(); 

} 
xmlhttp.onreadystatechange=function() 
{ 
if (xmlhttp.readyState==4 && xmlhttp.status==200) 
{ 
document.getElementById("my_div").innerHTML=xmlhttp.responseText; 
} 
} 

xmlhttp.open("GET","getfinds.php?dateoftrip="+name,true); 
xmlhttp.send(); 
} 

function getquerystring() { 
var form = document.forms['frm1']; 
var word = form.word.value; 
qstr = 'w=' + escape(word); // NOTE: no '?' before querystring 
return qstr; 
} 

</script> 

<style type="text/css"> 
<!-- 
.style1 { 
    font-family: Calibri; 
    font-size: 14px; 
} 
--> 
</style>

</head> 
<body onLoad="document.forms.getfinds.name.focus()" > 

<form action="getfinds.php" method="get" name="getfinds"> 
<input name="field" type="hidden" id="field" value="">
<table width="148" border="0"> 

<tr> 
<td width="152"><p class="style1">Select a date from below</p> 
  <div align="center"> 
    <?php 
include("db.php"); 

$query="SELECT dateoftrip FROM finds GROUP BY dateoftrip ORDER BY dateoftrip DESC"; 
echo '<select onchange="ajaxFunction(this.value)"><option name="name" value="allrecords">Show All Records</option>';
$result=mysql_query($query); 
while($rows=mysql_fetch_array($result)){ 

echo "<option name='name' value=".$rows['dateoftrip'].">".$rows['dateoftrip']."</option>"; 

} 
echo "</select>"; 
?> 
  </div></td> 
</tr> 
</table> 
</form> 
<div id="my_div"></div> 
</body> 
</html> 

ページ読み込み時にドロップダウンメニューにカーソルを挿入する方法を見つけようとしています。

以下を使用してみました<body onLoad="document.forms.getfinds.dropdown.focus()" >が、スクリプトを実行すると、次のエラーが発生します。document.forms.getfinds.dropdown is null or not an object.

私が言ったように、私は簡単な質問をお詫びしますが、私は答えをしばらく探していました。

誰かが私がどこで間違っているのか教えてくれないかと思っただけです。

よろしくお願いします

4

2 に答える 2

1

selectステートメントを次のように変更します。

echo '<select id="dropdown" name="dropdown" onchange="ajaxFunction(this.value)">

次のように変更<body>します。

<body onLoad="document.getElementById('dropdown').focus()" > 
于 2012-04-23T13:40:42.327 に答える
1

タグからname="name"属性を削除します。<option>

タグに属性name="dropdown"を追加します。<select>

その後、あなたonLoadはうまくいくでしょう。変更する必要はありません。

<option>タグはname属性をサポートしていません。

続きを読む: http ://www.w3schools.com/tags/tag_option.asp

于 2012-04-23T13:50:41.613 に答える