• ベストアンサー

自動的に現在の時刻に変更させる

プログラミング超初心者です。宜しくお願いします。 HTML上に今日の日付と現在の時刻をJAVAを使って、下記のソースのように表示させています。 <form name="rei7"> <p align="right">現在の日付 <input style="text-align:center; vertical-align: middle; font-size:16" size="25" type="text" name="today">  現在の時刻 <input style="text-align:center; vertical-align: middle; font-size:16" size="11" type="text" name="now"></p> </form> これだと、閲覧した時間しか反映できないので、自動的日時が変更できるようにしたいと思っています。また、このまま伸ばしていくと、ソースが長くなってしまうので、HTMLのheadに上げれたらと思っているのですが、いい方法があれば教えてください。

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

  • ベストアンサー
  • coopy72
  • ベストアンサー率50% (1/2)
回答No.3

javaでなくてはならないんでしょうか? たとえばjavascriptで <script type="text/javascript"> <!-- function clock(){ var now = new Date(); var watch1 = now.toLocaleString(); document.form1.text1.value = watch1; setTimeout("clock()", 1000); } // --> </script> </head> <body onLoad="clock()"> <form name="form1"> <input type="text" name="text1" /> </form> こういった状態ではないんでしょうか?(短く書くため日付も時間も一緒にしてしまっています

その他の回答 (3)

  • sh_hirose
  • ベストアンサー率66% (56/84)
回答No.4

No.1の方のようにすれば1秒間隔でsubmitされ、サーバの現在日時が取れます。 No.3の方のようにすれば1秒間隔でローカルPCの現在日時が取れます。 ただしNo.1の方の方法ですと毎秒submitされるので、他に入力項目がある場合に入力された内容をsession等に入れることを考えなくてはなりません。(他に入力項目がなければこの方法でもかまわないと思います。) あと描画に時間のかかる画面ですとちらつき等が気になると思います。 No.2の方の方法ですとサーバの日時ではなくローカルPCの日時になるので各PC毎に表示される日時が異なります。 入力内容のsubmitをせずにサーバの現在日時をとりたい場合はAjaxを使用するのがいいと思います。

参考URL:
http://www.ajaxtower.jp/ini/
  • askaaska
  • ベストアンサー率35% (1455/4149)
回答No.2

??? やりたいことがさっぱりわからないわ。 ブラウザ内に時計を表示したいってこと? submit時に現在時間を送信したいってこと? それとももっと別のこと?

  • OKwebb
  • ベストアンサー率44% (92/208)
回答No.1

表示させたいのはサーバ上の日時でいいのかな? で、上記htmlに記載はないけど、inputタグのvalueかなんかに日時が入っている? そんな迷惑なソース書いたことないのですが、 htmlヘッダに <META HTTP-EQUIV="Refresh" CONTENT="1"> とか書けば、1秒毎に再描画してくれるんじゃないかな。