- ベストアンサー
常に120日前の日付を表示するには?
いろいろ徘徊したのですが、どうしても探す事が出来ないので、分かる方がいましたら、教えて下さい。 今日(現在)の日付を表示するスクリプトは見つけましたが、その日付から遡って、常に120日前の日付を表示するにはどうしたらいいのでしょうか? 出来れば、年をまたいでも正しく表示されるといいのですが。 よろしくお願いします。
- みんなの回答 (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>
その他の回答 (2)
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
済みません、訂正します。 やっていることは、日付のミリ秒表現を得て120日分の時間を引いてセットし直すということです。 var day=24*60*60*1000;//1日のミリ秒 var aDay = new Date();//現在の日付 aDay.setTime(aDay.getTime() - day*120);//120日前の日付
補足
ご回答ありがとうございます。 でも私にはスクリプトの記述の仕方や組み込み方が分からないので、お手数ですが、 <SCRIPT LANGUAGE="JavaScript"><!-- から始まるスクリプト全体を教えていただけると大変有り難いと思います。 どうぞよろしくお願いします。
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
var day=24*60*60*1000;//1日のミリ秒 var aDay = new Date();//現在の日付 aDay.setTime(nPastDay.getTime() - day*120);//120日前の日付
お礼
素晴らしい! 感激しました。ホームページを訪問された方が自分で確認出来るようなタイプでしたので、まさしく求めていたものです。 早速使わせて頂きます。本当にありがとうございます。