- ベストアンサー
selectメニューの初期選択値
selectメニューでURLを移動させるページで、移動後、またselectメニューのページに「戻る」と、移動前に選択したメニューが表示されますが、初期選択値に戻して表示させる方法を教えてください。「クリア」ボタンをつけて見ましたが、他のformタグのselectメニューと関連させているので、一度メニューを選択して、実際に移動させる前に「クリア」ボタンを押すと、関連させている他のselectメニューはクリアにならないので、「クリア」ボタンを使わずに、ページを戻すときに「クリア」になっているようにしたいのですが...宜しくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
こんにちはchebさん、xruzです。 こんな感じでしょうか? <html> <head> <title></title> </head> <script language="JavaScript"> <!-- function reSel(fso) { for(var i=0;i<fso.length;i++) if(fso[i].defaultSelected) fso[i].selected=true; } /--> </script> <body> <form method="post" name="f"> <select name="s1" size="1"> <option value="a1">a1 <option value="b1">b1 <option value="c1" selected>c1 <option value="d1">d1 </select> <input type="button" value="<-reset" onClick="reSel(document.f.s1.options);"><br> <select name="s2" size="1"> <option value="a2">a2 <option value="b2" selected>b2 <option value="c2">c2 <option value="d2">d2 </select> <input type="button" value="<-reset" onClick="reSel(document.f.s2.options);"><br> </form> </body> </html> がんばってくださいね(~:~i
その他の回答 (2)
- negitoro
- ベストアンサー率30% (6/20)
chebさん これでどうでしょうか? <html> <head> <title>選択</title> </head> <script language="JavaScript"> function aa(){ document.form_name.select_name.value = "b2"; } //--> </script> <body onload="aa()"> <form name="form_name"> <select name=select_name > <option value="a2">a2 <option value="b2" selected>b2 <option value="c2">c2 <option value="d2">d2 </select> </form> </body> </html>
お礼
今回作成していたのは、検索するキーワードをCGIに渡すために選択するセレクトメニューでしたので、複数のセレクトメニューが同じ名前の設定になっており、教えていただいた方法ではうまく行きませんでした。でも、同じ名前でなければバッチリうまく行きましたので、今後活用させていただきます。ありがとうございました。
- negitoro
- ベストアンサー率30% (6/20)
onload を使ってページが読み込まれた瞬間に chebさん が作った「クリア」ボタンの処理を 関連付けあげれば、初期選択値に戻すことができるのでは? <BODY Onload="javascriptのfunction名">
補足
お返事ありがとうございます。 私が作った「クリア」ボタンは <input type="reset" value="クリア" name="reset"> というフォームタグです... これと同じ機能を「function」で設定する方法を教えてください。 宜しくお願い致します。
お礼
お返事が遅くなってすみませんでした。教えていただいた方法で、解決しました!!ありがとうございました。