- ベストアンサー
オプションメニューの日付の自動表示
- オプションメニューで設定した「年」・「月」・「日」を自動的に今日の日付を表示させるJAVAスクリプトを教えてください。
- HTMLのHEADタグ内とBODYタグ内の記述を具体的に教えていただければ非常に助かります。
- オプションメニューの日付の自動表示を実現するためのJAVAスクリプトの書き方をお教えください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
#1さんの補足ですが、 スクリプトはbodyに書かずにheadにまとめる(もしくは外部ファイル化) 方がよいでしょう。 getElementsByName()は有効性があやしいので、明示的にformから たどっていく方がよさそうですね。selectなのでformくらいはつけた方が いいでしょう。 あと、汎用性を考えると、以下のようにデータを頭からサーチするように すると流用しやすいと思います。 <HTML> <HEAD> <script language=javascript> window.onload=function(){ date = new Date(); year = date.getYear(); month = date.getMonth()+1; day = date.getDate(); var o=document.forms["年月日"].elements["年"].options for (var i=0;i<o.length;i++){ if(o[i].value==year+"年"){ o[i].selected=true; break; } } var o=document.forms["年月日"].elements["月"].options for (var i=0;i<o.length;i++){ if(o[i].value==month+"月"){ o[i].selected=true; break; } } var o=document.forms["年月日"].elements["日"].options for (var i=0;i<o.length;i++){ if(o[i].value==day+"日"){ o[i].selected=true; break; } } } </script> </HEAD> <BODY> <TABLE cellpadding="2" cellspacing="1"> <TBODY> <TR> <TD> <DIV style="font-size:13px"> <FORM name="年月日"> <SELECT name="年"> <OPTION value="2005年">2005年</OPTION> <OPTION value="2006年">2006年</OPTION> <OPTION value="2007年">2007年</OPTION> </SELECT> <SELECT name="月"> <OPTION value="1月">1月</OPTION> <OPTION value="2月">2月</OPTION> <OPTION value="3月">3月</OPTION> <OPTION value="4月">4月</OPTION> <OPTION value="5月">5月</OPTION> <OPTION value="6月">6月</OPTION> <OPTION value="7月">7月</OPTION> <OPTION value="8月">8月</OPTION> <OPTION value="9月">9月</OPTION> <OPTION value="10月">10月</OPTION> <OPTION value="11月">11月</OPTION> <OPTION value="12月">12月</OPTION> </SELECT> <SELECT name="日"> <OPTION value="1日">1日</OPTION> <OPTION value="2日">2日</OPTION> <OPTION value="3日">3日</OPTION> <OPTION value="4日">4日</OPTION> <OPTION value="5日">5日</OPTION> <OPTION value="6日">6日</OPTION> <OPTION value="7日">7日</OPTION> <OPTION value="8日">8日</OPTION> <OPTION value="9日">9日</OPTION> <OPTION value="10日">10日</OPTION> <OPTION value="11日">11日</OPTION> <OPTION value="12日">12日</OPTION> <OPTION value="13日">13日</OPTION> <OPTION value="14日">14日</OPTION> <OPTION value="15日">15日</OPTION> <OPTION value="16日">16日</OPTION> <OPTION value="17日">17日</OPTION> <OPTION value="18日">18日</OPTION> <OPTION value="19日">19日</OPTION> <OPTION value="20日">20日</OPTION> <OPTION value="21日">21日</OPTION> <OPTION value="22日">22日</OPTION> <OPTION value="23日">23日</OPTION> <OPTION value="24日">24日</OPTION> <OPTION value="25日">25日</OPTION> <OPTION value="26日">26日</OPTION> <OPTION value="27日">27日</OPTION> <OPTION value="28日">28日</OPTION> <OPTION value="29日">29日</OPTION> <OPTION value="30日">30日</OPTION> <OPTION value="31日">31日</OPTION> </SELECT> </form> </div> </TD> </TR> </TBODY> </TABLE> </BODY> </HTML>
その他の回答 (1)
- asahina02
- ベストアンサー率47% (95/202)
以下を</body>の直前に付ければ出来ます ※年のみの記述です 月日については以下を参考に自分で考えてみてください <script type="text/javascript"> <!-- date = new Date(); e = document.getElementsByName( "年" ); if( e.length && e[ 0 ] ) { year = date.getYear() + "年"; e[ 0 ].value = year; } //-->
補足
早速の回答ありがとうございます。 「月日」を見よう見まねでやってみたのですがうまくいきません。 HTMLタグもホームページビルダーで記述する程度の知識しか持ち合わせておりませんので、フル記述で教えていただける方がいらっしゃればよろしくお願いいたします。
お礼
yambejpさん、ありがとうございます!! 私が望んでいたものにぴったりです。 これで、より一歩進んだメールフォームをアップすることができます。 私のために貴重な時間を割いていただきましたことに深く感謝いたします。 重ね重ね、本当にありがとうございました。