• ベストアンサー

常に120日前の日付を表示するには? 

いろいろ徘徊したのですが、どうしても探す事が出来ないので、分かる方がいましたら、教えて下さい。 今日(現在)の日付を表示するスクリプトは見つけましたが、その日付から遡って、常に120日前の日付を表示するにはどうしたらいいのでしょうか? 出来れば、年をまたいでも正しく表示されるといいのですが。 よろしくお願いします。

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

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.3

サンプル <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <meta name="generator" content="WZ EDITOR 5.0"> <meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=SHIFI_JIS"> <title>120日前はいつ?</title> <script type="text/javascript"> <!-- var day=24*60*60*1000; function nDaysAgo(n){ //現在のn日前の日付を表示する var nPastDay = new Date(); nPastDay.setTime(nPastDay.getTime() - day*n); with(document.RESULT){ YEAR.value = nPastDay.getFullYear(); MONTH.value = nPastDay.getMonth()+1; DAY.value = nPastDay.getDate(); } } // --> </script> </head> <body> <form name="RESULT"> <button onclick="nDaysAgo(120)">今から120日前は…</button><br> <input name="YEAR" type="text" value="" size="5">年<br> <input name="MONTH" type="text" value="" size="5">月<br> <input name="DAY" type="text" value="" size="5">日 </form> </body> </html>

azumi4799
質問者

お礼

素晴らしい! 感激しました。ホームページを訪問された方が自分で確認出来るようなタイプでしたので、まさしく求めていたものです。 早速使わせて頂きます。本当にありがとうございます。

その他の回答 (2)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

済みません、訂正します。 やっていることは、日付のミリ秒表現を得て120日分の時間を引いてセットし直すということです。 var day=24*60*60*1000;//1日のミリ秒 var aDay = new Date();//現在の日付 aDay.setTime(aDay.getTime() - day*120);//120日前の日付

azumi4799
質問者

補足

ご回答ありがとうございます。 でも私にはスクリプトの記述の仕方や組み込み方が分からないので、お手数ですが、 <SCRIPT LANGUAGE="JavaScript"><!-- から始まるスクリプト全体を教えていただけると大変有り難いと思います。 どうぞよろしくお願いします。

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

var day=24*60*60*1000;//1日のミリ秒 var aDay = new Date();//現在の日付 aDay.setTime(nPastDay.getTime() - day*120);//120日前の日付