• ベストアンサー

当日の日付をプルダウンメニューに反映させたい

HTMLフォームにプルダウンメニューで日付を入力するようにしたい。月と日、通常なら1~12月と1~31日のプルダウンを作れば良いが初期値が1月1日になってしまいます。出来れば当日の日付を初期値にできるようにできないでしょうか?例えば本日なら4月25日が初期値になっている感じです。お願いします。

  • HTML
  • 回答数3
  • ありがとう数6

質問者が選んだベストアンサー

  • ベストアンサー
  • arukamun
  • ベストアンサー率35% (842/2394)
回答No.3

JavaScriptとか使えば出来ますね。 暇つぶしに作ってみました。 <HTML> <BODY onLoad="toDay(document.date)"> <SCRIPT LANGUAGE=JavaScript> <!-- function weekDay(y,m,d) { // 曜日を求めます。 if ( m < 3 ){ y -- ; m += 12 ; } return (y+Math.floor(y/4)-Math.floor(y/100)+Math.floor(y/400)+Math.floor((m*13+8)/5)+d)%7 ; } function maxDay(y,m) { // 最大日数を求めます。 s = weekDay(y,m,1); if ( m == 12 ){ y ++ ; m = 1 ; } else { m ++ ; } e = weekDay(y,m,1); if ( e >= s ){ return 28+e-s ; } else { return 35+e-s ; } } function changeDay(f) { // 日付を更新します。 var y = eval(f.year.value); var m = eval(f.month.selectedIndex+1); var d = eval(f.day.selectedIndex+1); var maxd = maxDay(y,m); if ( d > maxd ){ d = maxd ; f.day.selectedIndex = d-1 ; } f.day.options.length = maxd ; var i ; for (i=28 ;i<maxd ;i++){ f.day.options[i].text = i+1 ; } f.week.selectedIndex = weekDay(y,m,d); return false ; } function toDay(f) { // 今日の日付に設定します。 dt = new Date(); f.year.value = y = dt.getFullYear(); f.month.selectedIndex = m = dt.getMonth(); f.day.selectedIndex = d = dt.getDate()-1; changeDay(f); } // --> </SCRIPT> <FORM NAME=date> 西暦 <INPUT NAME=year SIZE=4 onChange="changeDay(this.form)"> 年 <SELECT NAME=month onChange="changeDay(this.form)"> <OPTION>&nbsp;&nbsp;1<OPTION>&nbsp;&nbsp;2<OPTION>&nbsp;&nbsp;3<OPTION>&nbsp;&nbsp;4<OPTION>&nbsp;&nbsp;5 <OPTION>&nbsp;&nbsp;6<OPTION>&nbsp;&nbsp;7<OPTION>&nbsp;&nbsp;8<OPTION>&nbsp;&nbsp;9<OPTION>10<OPTION>11<OPTION>12</SELECT> 月 <SELECT NAME=day onChange="changeDay(this.form)"> <OPTION>&nbsp;&nbsp;1<OPTION>&nbsp;&nbsp;2<OPTION>&nbsp;&nbsp;3<OPTION>&nbsp;&nbsp;4<OPTION>&nbsp;&nbsp;5 <OPTION>&nbsp;&nbsp;6<OPTION>&nbsp;&nbsp;7<OPTION>&nbsp;&nbsp;8<OPTION>&nbsp;&nbsp;9<OPTION>10 <OPTION>11<OPTION>12<OPTION>13<OPTION>14<OPTION>15<OPTION>16<OPTION>17<OPTION>18<OPTION>19<OPTION>20 <OPTION>21<OPTION>22<OPTION>23<OPTION>24<OPTION>25<OPTION>26<OPTION>27<OPTION>28<OPTION>29<OPTION>30 <OPTION>31 </SELECT> 日 <SELECT NAME=week disabled> <OPTION>日曜日<OPTION>月曜日<OPTION>火曜日<OPTION>水曜日<OPTION>木曜日<OPTION>金曜日<OPTION>土曜日</SELECT> </FORM> </BODY> </HTML>

jt0101
質問者

お礼

有難うございます。私の様に初心者には実際にサンプルを書いていただけたので、すごく助かりました。

その他の回答 (2)

  • YanYas
  • ベストアンサー率34% (26/75)
回答No.2

<Option Value="4/25" SELECTED> 基本的にこれを動的(CGI等)で出力させないといけませんよね。 要望とはあわないかもしれませんが、「今日」のプルダウンメニューをつくって、フォーム受け側で処理するとかも可能かもしれませんね。

jt0101
質問者

お礼

ご意見有難うございます。何とかできそうです。

  • Dpop
  • ベストアンサー率51% (279/544)
回答No.1

CGIやPHPなどを利用する必要があります。暫定的な方法で良ければJavaScriptで変更する。と言う方法もあります。 今日の日付をプルダウンメニューの初期値にしているページを良く見かけると思いますが、そう言うページは、CGIやPHPなどのプログラムによって作られたページなのです。 HTMLと言うのは、ページを表示する機能しかもって居らずプルダウンメニューの内容を変更する。と言う事はできません。 ただ、かなり暫定的な方法になってしまいますが、JavaScriptでプルダウンメニューの内容を変更する。と言うことも不可能ではありません。 ただ、そのプルダウンメニューがどの様に利用されているのか、によって可能/不可能が分かれますし、リロードする毎にJavaScriptが起動するので、ページがやや重くなってしまう。と言う欠点もあります。 もう少し詳しい情報を示して頂けると、もう少しアドバイスができるかも知れません。

jt0101
質問者

お礼

早速のご意見ありがとうございます。皆様のおかげで解決することができました。

関連するQ&A

  • メールフォームのプルダウンメニュー

    メールフォームに都道府県などを選ぶプルダウンメニューを入れたいと思います。 通常のテキストボックスには必須コマンドが有効なのですが、 プルダウンの場合、「お選びください」という1行目があるため、 必須にしようとしてもなかなかできません。 この「お選びください」という1行目を無効にすることはHTML上のタグ操作で可能なんでしょうか?

    • ベストアンサー
    • HTML
  • 日付が動的なプルダウンを作りたいのですが。。。

    いつもお世話になっております。 プログラミング超初心者で、ただいま勉強中です。 jspで、日付(年と月)が、動作させている当日の日付に動的に作動するようなプルダウンを作りたいのですが、 ”動的に”という部分がうまくいきません。 普通のプルダウンは作れるのですが。。。どなたか、作り方を教えていただけますでしょうか? よろしくお願いします。

  • Access2007でプルダウンメニューを使う時のVBAの組み方、プロ

    Access2007でプルダウンメニューを使う時のVBAの組み方、プロパティの設定方法が わかりません。わかる方いらっしゃいましたら教えてください。 以下のようなフォームを作成しています。 ■受付内容:プルダウンメニューです。とあるテーブルとつなげています。データは、入会・再入会・退会が選択できます。 ■受付日:テキストボックスです。日付を入力します。 ■入会開始日:テキストボックスです。日付を入力します。 ■退会日:テキストボックスです。日付を入力します。 上記のような場合、たとえば、受付内容で、「入会」を選択したときに、 「退会日」のテキストボックスをアクティブにしない、または非表示のどちらでもよいのですが、 とにかく入力させないようにしたいです。 できれば、プルダウンメニューで選択する度に、テキストボックスを表示・非表示になるようにしたいの ですが、設定がうまいことできません。 どのようにしたらよいか、おわかりになる方がいましたら、教えてください。 よろしくお願いします。

  • Excel で日付入力のプルダウンメニューを簡単に作る方法

    Excel 2003 でも Excel 2007 でもかまいません。(OSもXP・Vistaどちらも使っています。) 日付入力はプルダウンメニューから選ばせるとき、どこかのセルに選択肢のリスト(例えば M1:M31に 2008/10/1~2008/10/31)を作っておいて、入力規則を「リスト」にする、という方法はわかりますが、リストを作らないでもっと簡単に選ばせる方法はないでしょうか? イメージとしては、セルB2に、日付未入力の段階では 「(ここに日付を入力)」 と表示させておいて、▼を押すとプルダウンが現れて、その先頭は今日の日付(=today() ??)で、下に向かって日付が古くなっていく(とりあえず1週間分くらいあれば足ります)という感じです。任意の日付を(2007/4/5など)入力できるとなお良いですが無理は言いません。(私は、入力規則をリストまたは任意日付、とする方法を知らないので。) セルに値を入力、じゃなくて、何かのコントロールでもかまいません。マクロで日付を読み込めることが必須条件です。 大がかりなマクロを組めば期待するものを実現できるかも知れませんが、なるべくシンプルな方法をご存じの方、いらっしゃいませんでしょうか。実は私自身、Excel 2007 で「(ここに日付を入力)」などを見たことがある気がするのですが、ど忘れしてしまいました。よろしくお願いします。

  • プルダウンで今日以降の日付を表示する方法

    プルダウンで今日の日付とか、明日の日付以降を10個くらい表示する方法はあるでしょうか?つまり、今日が8/1なら、 8月1日(月) 8月2日(火) 8月3日(水) 8月4日(木) 8月5日(金) 8月6日(土) という風にプルダウンで表示したいです。言語はPHPを使用しているのですが、実現できればPHPでも、HTMLでもかまいません。

    • ベストアンサー
    • PHP
  • 入力フォームとプルダウンメニューに関して

    入力フォームとプルダウンメニューを重ねて表示し、入力フォームを上部に表示したいのですが、自分で試してみるとプルダウンメニューが入力フォームの上部に表示されてしまいます。 入力フォームを上部に表示したいのですが、 やり方がわかりません。教えて下さい。 よろしくお願いします。 <html> <head> <title></title> //CSSの定義 <style type="text/css"> <!-- span{ position:relative; left:70px; } --> </style> </head> <body> <span> //入力フォーム <input type="text" name="input" size="10" maxlength="1"> </span> //プルダウンメニュー <select> <option></option> <option>あああ</option> <option>いいい</option> <option>ううう</option> <option>えええ</option> <option>おおお</option> </select> </body> </html>

  • プルダウンメニューから特定曜日の日付を選択する方法は?

    プルダウンメニューで特定の曜日の日付を選択するにはどのようにしたら良いのでしょうか? たとえば、火曜日と金曜日など。 日付は常にその日以降になるようにしたいです。 よろしくお願いします。

  • 当日から3日後がデフォルトの連動年月日プルダウン

    当日から3日後がデフォルトの連動年月日プルダウンを作成したいと思っております。 言語はPHPかJavaScriptを予定しています。 まず1つ目のプルダウンには当日から3日後~1か月程度の選択肢を、2つ目のプルダウンには1つ目のプルダウンで選択された日付の1日後~1か月程度の選択肢にしたいと考えています。 プルダウン(1) 2013-03-15 プルダウン(2) 2013-03-16 連動プルダウンのサンプルコードは手に入ったのですが、日付のプルダウンにするにはどうすれば良いかが全く分かりませんでしたので、質問させて頂きました。 すみませんが、どなたかサンプルなどをお教えいただけないでしょうか。 よろしくお願いいたします。

  • プルダウンメニューの作り方

    プログラム初心者ですが、よろしくお願いします。 タイトルの通り、HP上でプルダウンメニューを作りたいのですが、基本的に誰でも閲覧できるHP(特にビギナー)にしたいので、プラグインが必要なFlashは避けたいと考えております。 しかし、構造的(?)にはFlashで作成するようなプルダウンメニューにしたいのです。 例えばマツダのサイトのように… http://www.mazda.co.jp/home.html ここのページはFlashで作成されてるようですが、例えばここでいうと、、、「カーラインナップ」をオンマウスすると左側にずらりとメニューが現れます。 トップページで下の階層まで確認できます。 このような作りにしたいのですが、HTMLのみで、これを作成しようとすると、ヤフーメールの様に「フォルダ」の前に「+」マークがあって、それをクリックして、「受信箱」「送信箱」のHTMLを呼ぶというが思い浮かぶのですが、コレだと、いちいち「クリック」という動作をしないといけないのが、ひっかかります。 HTMLのみだとこれしかないでしょうか?? 例えば「リスマチック」のHP(左テーブル側)等はどのように作成しているのでしょうか? http://www.lithmatic.co.jp/index2.html リスマチック方式はいい感じ~、って思ってるんですけど、ヤフーメール方式とは違いますよね? どなたか、よろしくお願いします。

  • 複数プルダウンメニューのカスタマイズ

    HTMLと、FUTOMIさんのメールフォームソフトを使用してお問い合わせフォームを作成しています。 いくつか入力項目があり、そのなかの 希望1、希望2という項目で景品の第一希望と第二希望の商品を選択してもらおうと思っています。 どちらもプルダウンメニューから選択してもらう形式にしたいです。 私が作成したものでは、希望1で「商品A」を選択した状態で 次の希望2の項目に移行した際にも「商品A」は選択出来てしまいます。。 これを、希望1で「商品A」を選択した場合は、希望2に移行した際 「商品A」は選べないというようにすることは可能でしょうか?? (つまり2つのプルダウンメニューから同一商品は選択できないというようにしたいのです) どなたか、お知恵を拝借できませんでしょうか。 よろしくお願い致します!!

    • ベストアンサー
    • HTML

専門家に質問してみよう