• ベストアンサー

JavaScriptで平日のみをカウントダウンするには?

以下のプログラムは土日は無視されますが祝日も平日としてカウントダウンされてしまいます。 土、日、祝日を含まない平日のみをカウントダウンするプログラムを教えていただけますでしょうか? <html> <head> <script language="JavaScript"> <!-- function countdown() { var kyou = new Date(); var kinen = new Date("Sep 31, 2008 00:00:00"); // 目標日との差のミリ秒(の絶対値) var tdiff = Math.abs(kinen.getTime() - kyou.getTime()); // 日数 var days = 0; var mae; if (kinen.getTime() > kyou.getTime()) { // 目標日以前なら mae = true; // 曜日を取得(日曜が0、月曜が1、...、土曜が6) var weekday = kyou.getDay(); while (tdiff > 0) { if (weekday > 0 && weekday < 6) { ++days; } weekday = weekday != 6 ? weekday + 1 : 0; tdiff -= (24 * 60 * 60 * 1000); } } else { // 目標日以降(含む当日)なら mae = false; // 曜日を取得(日曜が0、月曜が1、...、土曜が6) var weekday = kinen.getDay(); // 残りが1日未満になるまで繰り返す // 元のプログラムがMath.ceilで切り上げを行っているため、 // それにあわせるための処置 while (tdiff > (24 * 60 * 60 * 1000)) { if (weekday > 0 && weekday < 6) { ++days; } weekday = weekday != 6 ? weekday + 1 : 0; tdiff -= (24 * 60 * 60 * 1000); } } var meate="あ"; with(Math){ var kotoba; if (mae) { // 目標日前なら-1日する --days; kotoba = meate + "と " + days + "日 です。"; } else { if (days == 0) { kotoba = "も" + meate + "です!"; } else { kotoba = meate + "から" + days + "日が過ぎました。"; } } } document.write(kotoba); } //--> </script> </head> <body> <center><table border=2 bordercolor=00ffff cellpadding=5 cellspacing=0> <tr bgcolor="#ffffff"><td bgcolor="#ffff80"> <script language="JavaScript"> <!-- countdown(); //--> </script> </td></tr> </table></center> </body> </html> ご教授の方を宜しくお願いします。

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

  • ベストアンサー
noname#84373
noname#84373
回答No.3

自分にとってこれは難問でした。はたして正確なのかもわからず、簡単な検証だけしました。(祝日は約10年先まで調べてからカウントしてます) ミスがなければ好いのですが・・・・。 これ以上は無理です! <html> <body> 今年の労働は後<span id="a"></span>日あります。;_; <script> window.onload=function(){document.getElementById('a').innerHTML=workdayCount(new Date(2008,12-1,31))};//1月が0なので1つ減る function workdayCount(e_date){ var c=0; var s=(new Date()).getTime(); var e=e_date.getTime(); var stp=24*60*60*1000; var y=(new Date()).getFullYear(); var hdy=[]; for(var m=y+10;y<m;y++){ hdy[y*10000+101]='元旦'; hdy[y*10000+[109,108,114,113,112,111,110][dayCount(y+'/01/01')%7]]='成人の日'; hdy[y*10000+211] = '建国記念の日'; hdy[y*10000+((320.8431+0.242194*(y-1980))|0)-(((y-1980)/4)|0)]='春分の日'; hdy[y*10000+429] = '昭和の日'; hdy[y*10000+503] = '憲法記念日'; hdy[y*10000+504] = 'みどりの日'; hdy[y*10000+505] = '子供の日'; hdy[y*10000+[716,715,721,720,719,718,717][dayCount(y+'/07/01')%7]]='海の日'; hdy[y*10000+[916,915,921,920,919,918,917][dayCount(y+'/09/01')%7]]='敬老の日'; hdy[y*10000+((923.2488+0.242194*(y-1980))|0)-(((y-1980)/4)|0)]='秋分の日'; hdy[y*10000+[1009,1008,1014,1013,1012,1011,1010][dayCount(y+'/10/01')%7]]='体育の日'; hdy[y*10000+1103]='文化の日'; hdy[y*10000+1123]='勤労感謝の日'; hdy[y*10000+1223]='天皇誕生日'; for(var i=101;i<1232;i++){ if(hdy[y*10000+i]){ if(dayCount(y+'/'+((i/100)|0)+'/'+i%100)%7==0 && (hdy[y*10000+i+1])!='') {hdy[y*10000+i+1]='振替休日';i+=2;} } } } while(s<e){ var ss =new Date(s); var chkdy=ss.getFullYear()*10000+(ss.getMonth()+1)*100+ss.getDate(); if(0<ss.getDay() && ss.getDay()<6 && hdy[chkdy]==undefined) {c++;} s+=stp; } return c; } function serial(date_str){ return (dayCount(date_str)-dayCount('1899/12/31')).toFixed(6); } function dayCount(date_str){ var dy=date_str.split(/\/|-| |:/);for(var i=0;i<6;i++) dy[i]=dy[i]?dy[i]-0:0; var tpy=dy[0]-1; var d=tpy*365+(tpy/400|0)-(tpy/100|0)+(tpy/4|0)+[0,0,31,59,90,120,151,181,212,243,273,304,334][dy[1]]+dy[2]+(((!(dy[0]%4))^(!(dy[0]%100))^(!(dy[0]%400)))&(dy[1]>2)); var t=dy[3]/24+dy[4]/1440+dy[5]/86400; return (d+t).toFixed(6); } </script> </body> </html>

OMIYA33
質問者

お礼

す、すばらしいです!!! 祝日もカウントされていません。 ほんとうに感謝いたします。ありがとうございました。

その他の回答 (2)

noname#84373
noname#84373
回答No.2

祝日一覧データ function dayCount(date_str){ var dy=date_str.split(/\/|-| |:/);for(var i=0;i<6;i++) dy[i]=dy[i]?dy[i]-0:0; var tpy=dy[0]-1; var d=tpy*365+(tpy/400|0)-(tpy/100|0)+(tpy/4|0)+[0,0,31,59,90,120,151,181,212,243,273,304,334][dy[1]]+dy[2]+(((!(dy[0]%4))^(!(dy[0]%100))^(!(dy[0]%400)))&(dy[1]>2)); var t=dy[3]/24+dy[4]/1440+dy[5]/86400; return (d+t).toFixed(6); } var y=(new Date()).getFullYear();y=2007; var hdy=[]; hdy[101]='元旦'; hdy[[109,108,114,113,112,111,110][dayCount(y+'/01/01')%7]]='成人の日'; hdy[211] = '建国記念の日'; hdy[((320.8431+0.242194*(y-1980))|0)-(((y-1980)/4)|0)]='春分の日'; hdy[429] = '昭和の日'; hdy[503] = '憲法記念日'; hdy[504] = 'みどりの日'; hdy[505] = '子供の日'; hdy[[716,715,721,720,719,718,717][dayCount(y+'/07/01')%7]]='海の日'; hdy[[916,915,921,920,919,918,917][dayCount(y+'/09/01')%7]]='敬老の日'; hdy[((923.2488+0.242194*(y-1980))|0)-(((y-1980)/4)|0)]='秋分の日'; hdy[[1009,1008,1014,1013,1012,1011,1010][dayCount(y+'/10/01')%7]]='体育の日'; hdy[1103]='文化の日'; hdy[1123]='勤労感謝の日'; hdy[1223]='天皇誕生日'; for(var i=101;i<1232;i++){ if(hdy[i]){ if(dayCount(y+'/'+((i/100)|0)+'/'+i%100)%7==0 && !hdy[i+1]) {hdy[i+1]='振替休日';i+=2;} } } for(i=0,v=y+"\n";i<1232;i++){if(hdy[i]!=undefined) v+=i+'='+hdy[i]+'\n';} alert(v);

  • meenie
  • ベストアンサー率44% (40/90)
回答No.1

Javascriptは祝日に対応していません。 ですから、「祝日一覧リスト」のようなものを作成し、 「現在の日付が祝日一覧リストに存在したら、その日はカウントしない」 という処理を土日判定付近に加えてください。

関連するQ&A

  • JavaScriptでイベントまでのカウントを作りたい。

    教えてください。JavaScript初心者です。 JavaScriptでイベントまでのカウントを作りたいのですが、 日にちを画像でだして、指定した日がきたら、画像で差し替えるようにしたいのですが、どうすればいいのでしょうか? ※現在は指定した日がきたら、「おめでとう」の文字がでるようにしてます。 書いたタグは下記になります。 アドバイスをお願いします。 <script language="JavaScript"><!-- var now = new Date(); var point = new Date(2009,8-1,25); var countdown = Math.ceil( ( point.getTime() - now.getTime() ) / (1000*60*60*24) ); if(countdown > 0) { document.write('countdown '); } else { document.write('おめでとう!'); } // --></script>

  • javascriptにおける指定日時までのカウントダウン

    いろいろなサイトを見回りながら「指定日までの残り日数と時間を表示する」のをjavascriptで動かしたいのですがリアルタイムに秒が進んでくれません。知識のある方はどうか間違えてる点のご教授お願いします。 <html> <head> <title>指定日までの残り日数と時間を表示する</title> </head> <body> <script language="JavaScript"><!-- function xDay(y,m,d,hh,mm,ss){ today = new Date(); xday = new Date(y,m-1,d,hh,mm,ss); dayMS = (24*60*60*1000,60*60*1000); days = Math.floor((xday.getTime()-today.getTime())/(24*60*60*1000)); hours = Math.floor(((xday.getTime()-today.getTime())%(24*60*60*1000))/(60*60*1000)); minutes = Math.floor((((xday.getTime()-today.getTime())%(24*60*60*1000))/(60*1000))%60); seconds = Math.floor((((xday.getTime()-today.getTime())%(24*60*60*1000))/1000)%60%60); myDisp=""; if (days != 0)myDisp+=days+"日と "; if (hours != 0)myDisp+=hours+"時間 "; if (minutes != 0)myDisp+=minutes+"分 "; myDisp+=seconds+"秒"; document.myForm.myFormDate.value = myDisp; setTimeout("xday()",1000); } // --></script> <form name="myForm"> <input type="text" size="35" name="myFormDate"> <script language="JavaScript"><!-- xday(); // --></script> </form> <script language="JavaScript"><!-- xDay(2008,9,13,15,00,00); // --></script> </body> </html>

  • javascript カウントダウンについて

    下記のようなjavascript でカウントダウンをしています。 ですが、指定日を過ぎると、00 表示になってしまいます。 これを指定日の指定時間を過ぎたら、-- という表示に変更し、 また、bodyないのタグにidを使って「指定日を過ぎました。」という 表示を出したいのですが、ご教授ねがいます。 <script language="javascript"> <!-- function countdown(year, month, day, hour, minute) { Today = new Date(); Todays_Year = Today.getFullYear() - 2000; Todays_Month = Today.getMonth() + 1; Todays_Day = Today.getDate(); Todays_Hour = Today.getHours(); Todays_Date = (new Date(Todays_Year, Todays_Month, Todays_Day, Todays_Hour, Today.getMinutes(), Today.getSeconds())).getTime(); Target_Date = (new Date(year, month, day, hour, minute, 00)).getTime(); Time_Left = Math.round((Target_Date - Todays_Date) / 1000); if(Time_Left < 0) Time_Left = 0; days = Math.floor(Time_Left / (60 * 60 * 24)); Time_Left %= (60 * 60 * 24); hours = Math.floor(Time_Left / (60 * 60)); Time_Left %= (60 * 60); minutes = Math.floor(Time_Left / 60); Time_Left %= 60; seconds = Time_Left; cDay = document.getElementById("counter_day"); cHour = document.getElementById("counter_hour"); cMin = document.getElementById("counter_min"); cSec = document.getElementById("counter_sec"); cDay.innerHTML = GetFormated(days); cHour.innerHTML = GetFormated(hours); cMin.innerHTML = GetFormated(minutes); cSec.innerHTML = GetFormated(seconds); //Recursive call, keeps the clock ticking. setTimeout('countdown(' + year + ',' + month + ',' + day + ',' + hour + ',' + minute + ');', 1000); } function GetFormated(i) { if(i<10) { return "0"+i; } return i; } //--> </script> </head> <body> <span id="counter_day"></span> <span id="counter_hour"></span> <span id="counter_min"></span> <span id="counter_sec"></span> <script language="JavaScript"> <!-- countdown('07,11,05,21,00'); //-->

  • カウントダウンJSにタイマーは付けられますか?

    カウントダウンプログラムを使用しているのですが、 毎日0時になったらカウントダウンがスタートするように改造したく思います。 (カウントダウンが始まる前は非表示にしておきたいです。) 使っているソースは以下です。 お詳しい方、教えていただけませんでしょうか。 よろしくお願いいたします! ----------------------------------- <!-- カウントダウン --><DIV id="myCwww"></DIV> <SCRIPT language="JavaScript"><!-- function myCountd(){ myHyouji = 1; //0で秒数、1で日数含む形式 mySetname = "セール終了"; //目標時間の名称 mySetyear = 2011; //目標年 mySetmon = 3; //目標月 mySetday = 6; //目標日 mySethour = 23; //目標時 mySetmin = 59; //目標分 mySetsec = 59; //目標秒 myTime = new Date(); mySettime = new Date(mySetyear,mySetmon - 1,mySetday,mySethour,mySetmin,mySetsec); myTimeth = (Math.floor( ( myTime.getTime() - mySettime.getTime() ) / 1000) ) * -1; if(myTimeth > -1){ myChunts = 0; } else { myChunts = 1; myTimeth = myTimeth * -1; } if(myHyouji == 1){ var myWarid = 0; var myWarih = 0; var myWarim = 0; if(myTimeth > 86399){ myWarid = myTimeth / 86400; myWarid = Math.floor(myWarid); myTimeth = myTimeth - (86400 * myWarid); } if(myTimeth > 3599){ myWarih = myTimeth / 3600; myWarih = Math.floor(myWarih); myTimeth = myTimeth - (3600 * myWarih); } if(myTimeth > 59){ myWarim = myTimeth / 60; myWarim = Math.floor(myWarim); myTimeth = myTimeth - (60 * myWarim); } myTimeth = myWarid + "日と" + myWarih + "時間" + myWarim + "分" + myTimeth; } if(myChunts == 0){ document.getElementById("myCwww").innerHTML = mySetname + "まで、あと" + myTimeth + "秒です"; } else { document.getElementById("myCwww").innerHTML = "セール終了いたしました。"; } } setInterval("myCountd()", 1000); // --></SCRIPT><!-- カウントダウン -->

  • javascriptによるカウントダウンタイマー制作

    只今、javascriptでカウントダウンタイマーを制作しています。 ボタンをクリックすると動いているカウントダウンタイマーに10秒追加するようにしたいのですが、いろいろためしてみたのですがうまくいきません。散々悩んでいるうちに2日もたってしまいました。 御存じの方、いらっしゃいましたらどうか教えていただけませんでしょうか? <script type="text/javascript"> <!-- if (window.attachEvent){ window.attachEvent('onload', showday); }else { window.addEventListener('load', showday , false); } function settime1(){ var year =2011; //年 var mon =4; //月 var day =2; //日 var time =20; //時 var min = 20; //分 var sec = 15; //秒 var xday = new Date(year,mon-1,day,time,min,sec); //基準になる年月日 return xday; } function showday() { var nowday = new Date(); var xday = new settime1(); var passtime= xday.getTime()-nowday.getTime(); //今から基準になる日までの経過時間 1/1000秒単位 var cnt_day = Math.floor(passtime/(1000*60*60*24)); // カウントダウン表示 (日にち) の取得 passtime = passtime -(cnt_day*(1000*60*60*24)); // 経過秒から(日にち)を引く var cnt_hour = Math.floor(passtime/(1000*60*60));// カウントダウン表示 (時) の取得 passtime = passtime -(cnt_hour*(1000*60*60)); // 経過秒から(時)を引く var cnt_min = Math.floor(passtime/(1000*60)); // カウントダウン表示 (分) 取得 passtime = passtime -(cnt_min*(1000*60));// 経過秒から(分)を引く cnt_sec = Math.floor(passtime/1000);// カウントダウン表示 (秒) 取得 passtime = passtime -(cnt_sec*(1000)); // 経過秒から(秒)を引く var cnt_millisec = Math.floor(passtime/10); // カウントダウン表示 (100/1秒) 取得 // 分、秒、ミリ秒を2桁で表示する。 if(cnt_min<10){cnt_min = '0' + cnt_min;} if(cnt_sec<10){cnt_sec = '0' + cnt_sec;} if(cnt_millisec<10){cnt_millisec = '0' + cnt_millisec;} if((xday - nowday) > 0){ document.tbox.dspday.value = cnt_hour+":"+cnt_min+":"+cnt_sec; }else { document.tbox.dspday.value = "終了" } timerID = setTimeout('showday()', 1000); } </script> </head> <body> <form name="tbox" action="#"> <input name="dspday" id="dspday" type="text" style="position:absolute; top:475px;left:55px; font-size : 25px; z-index:3; color:navy; background:transparent; border-width : 0px ;border-style : solid;font-weight :bold ;" size="45" /> <input name="dspdaybtn" type="button" onClick="" value="10秒追加" style="position:absolute; top:510px; left:70px; z-index:4;"/> </form>

  • カウントダウンのタグ

    おバカな質問でごめんなさいです(T_T) 笑わないでね?! 呆れないでね?! カウントダウンのカウンター(?)を置きたくて いろんなサイトを見て作ろうと思ったのですが これじゃ~表示されなくて… 何が足りないですか? ()の中ってどうするのですか? たぶん… メチャクチャだと思うのでここに質問すること事態 恥ずかしくて迷いましたが宜しくお願いします。 m( _"_ )mペコ♪ <!-- var set_y = 2005; var set_m = 9; var set_d = 5; var now = new Date(); var spday= new Date(set_y,set_m-1,set_d); a = (spday.getTime() - now.getTime())/(24*60*60*1000); a= Math.ceil(a); if(a >0) document.write("あと",a,"日で○○○です。"); else if(a==0) document.write("<h2>○○○開催!!</h2>"); else if(a <0) document.write("○○○",-a,"日過ぎました・・・"); --> <script language="javascript"> <!-- //--> </script>

    • ベストアンサー
    • HTML
  • javascriptでカウントダウンタイマー

    お世話になります。 JavaScriptでカウントダウンをWEBに表示させたいと思っています。 WEBで見つけた3種類を試してみました。 下記、例A 締め切りを1カ月後に指定 <!-- the_day = new Date(2008,11,8) function countdown() { today = new Date() days = Math.floor((the_day-today)/(24*60*60*1000)) hours = Math.floor(((the_day-today)%(24*60*60*1000))/(60*60*1000)) minutes = Math.floor(((the_day-today)%(24*60*60*1000))/(60*1000))%60 seconds = Math.floor(((the_day-today)%(24*60*60*1000))/1000)%60%60 if((the_day - today) > 0){ document.f.days.value = days+"日"+"と"+hours+"時間"+minutes+"分"+seconds+"秒" }else{ document.f.days.value = "締め切りました" } tid = setTimeout('countdown()', 1000) } // --> <body> <FORM NAME=f> <INPUT TYPE=text SIZE=45 NAME=days> </FORM> <SCRIPT Language="JavaScript"> countdown(); </SCRIPT> </body> 以上 ブラウザでの表示「60日と5時間50分18秒」 残り、30日と表示されるべきところが、60日と表示されます。 PCの日付は合ってますし、他の者の環境でも同じ日にちでした。 そこで質問です。 1)試した3種類とも同様の日にちになりました。ということは間違いではなく、何か理由があるのですよね? 2)<days>を、(-30)にすれば数字的には合うのですが、問題ないでしょうか?   days = Math.floor((the_day-today)/(24*60*60*1000))-30 3)「22時締め切り」にしたいのですが、時間の指定は出来ないでしょうか?  初歩以前の質問で申し訳ありませんが、正しい書き方を教えていただければ、嬉しいです。 どうぞよろしくお願い致します。

  • javascriptカウントダウン終了後別ページへ

    javascriptでカウントダウン終了後に別ページに飛ばすリンクを表示したいのですが、どのようにすれば教えていただけますでしょうか? 下記スクリプトではカウントダウン終了時に「終了しました」と表示されます。 その「終了しました」にリンクを貼りたいです。 <script language="JavaScript" type="text/javascript"> function CountdownTimer(elm,tl,mes){ this.initialize.apply(this,arguments); } CountdownTimer.prototype={ initialize:function(elm,tl,mes) { this.elem = document.getElementById(elm); this.tl = tl; this.mes = mes; },countDown:function(){ var timer=''; var today=new Date(); var day=Math.floor((this.tl-today)/(24*60*60*1000)); var hour=Math.floor(((this.tl-today)%(24*60*60*1000))/(60*60*1000)); var min=Math.floor(((this.tl-today)%(24*60*60*1000))/(60*1000))%60; var sec=Math.floor(((this.tl-today)%(24*60*60*1000))/1000)%60%60; var milli=Math.floor(((this.tl-today)%(24*60*60*1000))/10)%100; var me=this; if( ( this.tl - today ) > 0 ){ if (day) timer += '<span class="day">'+day+':</span>'; if (hour) timer += '<span class="hour">'+hour+':</span>'; timer += '<span class="min">'+this.addZero(min)+':</span><span class="sec">'+this.addZero(sec)+':</span><span class="milli">'+this.addZero(milli)+'</span>'; this.elem.innerHTML = timer; tid = setTimeout( function(){me.countDown();},10 ); }else{ this.elem.innerHTML = this.mes; return; } },addZero:function(num){ return ('0'+num).slice(-2); } } function CDT(){ var tl = new Date('2013/2/1 00:00:00'); var timer = new CountdownTimer('CDT',tl,'終了しました'); timer.countDown(); } window.onload=function(){ CDT(); } </script>

  • カウントダウンを何個も表示したいのですが・・・

    こんばんは。 「次の誕生日まであと○日」というカウントダウンを自動で表示したくて 検索してみたところ,JavaScriptで書くことが分かりました。 (JavaScriptの書き方は全く知りません。) とあるHPで,以下のように書けば良いと習い <SCRIPT LANGUAGE="JavaScript"> <!-- var now = new Date(); var xday = new Date(2004, 9-1, 15); count = Math.ceil( (xday.getTime() - now.getTime()) / (24*60*60*1000) ); document.write("<FONT style='font-size : 16px; color : #666666'>"); document.write("次の誕生日まであと "); document.write(count); document.write("日 です</FONT>"); //--> </SCRIPT> このように書いたら,無事できました。 しかし, 「次の誕生日まであと○日」 「○さんの誕生日まであと○日」 というように,改行して2つのカウントダウンを表示したく HTMLしか分からないので<br>を入れてみたのですが カウントダウンが2つとも表示されません。 改行して表示するにはどうしたら良いのでしょうか。 どうか教えてください。よろしくお願いいたします。

    • ベストアンサー
    • HTML
  • このjavascriptコードを短くできませんか?

    javascript初心者です。 どなたか下記のコードを短くしていただけないでしょうか? 変数1~変数12まであるので、それぞれコードを書いたら長くなってしまいました。 このままでもうまく動いてはいるのですが、もし短くできるならしたいなと思いまして。 よろしくお願いいたします。 <script type="text/javascript"> <!-- //基準になる日を設定 inputDay1 = "変数1"; //指定日を変数に var hairetu = inputDay1.split("/"); var nowday = new Date(); //今日の日付 var xday = new Date(hairetu[0],hairetu[1] - 1,hairetu[2]);//基準になる日 var countday1 = Math.ceil((xday.getTime() - nowday.getTime()) / (1000 * 60 * 60 * 24)); inputDay2 = "変数2"; //指定日を変数に var hairetu = inputDay2.split("/"); var nowday = new Date(); //今日の日付 var xday = new Date(hairetu[0],hairetu[1] - 1,hairetu[2]);//基準になる日 var countday2 = Math.ceil((xday.getTime() - nowday.getTime()) / (1000 * 60 * 60 * 24)); inputDay3 = "変数3"; //指定日を変数に var hairetu = inputDay3.split("/"); var nowday = new Date(); //今日の日付 var xday = new Date(hairetu[0],hairetu[1] - 1,hairetu[2]);//基準になる日 var countday3 = Math.ceil((xday.getTime() - nowday.getTime()) / (1000 * 60 * 60 * 24)); inputDay4 = "変数4"; //指定日を変数に var hairetu = inputDay4.split("/"); var nowday = new Date(); //今日の日付 var xday = new Date(hairetu[0],hairetu[1] - 1,hairetu[2]);//基準になる日 var countday4 = Math.ceil((xday.getTime() - nowday.getTime()) / (1000 * 60 * 60 * 24)); inputDay5 = "変数5"; //指定日を変数に var hairetu = inputDay5.split("/"); var nowday = new Date(); //今日の日付 var xday = new Date(hairetu[0],hairetu[1] - 1,hairetu[2]);//基準になる日 var countday5 = Math.ceil((xday.getTime() - nowday.getTime()) / (1000 * 60 * 60 * 24)); inputDay6 = "変数6"; //指定日を変数に var hairetu = inputDay6.split("/"); var nowday = new Date(); //今日の日付 var xday = new Date(hairetu[0],hairetu[1] - 1,hairetu[2]);//基準になる日 var countday6 = Math.ceil((xday.getTime() - nowday.getTime()) / (1000 * 60 * 60 * 24)); inputDay7 = "変数7"; //指定日を変数に var hairetu = inputDay7.split("/"); var nowday = new Date(); //今日の日付 var xday = new Date(hairetu[0],hairetu[1] - 1,hairetu[2]);//基準になる日 var countday7 = Math.ceil((xday.getTime() - nowday.getTime()) / (1000 * 60 * 60 * 24)); inputDay8 = "変数8"; //指定日を変数に var hairetu = inputDay8.split("/"); var nowday = new Date(); //今日の日付 var xday = new Date(hairetu[0],hairetu[1] - 1,hairetu[2]);//基準になる日 var countday8 = Math.ceil((xday.getTime() - nowday.getTime()) / (1000 * 60 * 60 * 24)); inputDay9 = "変数9"; //指定日を変数に var hairetu = inputDay9.split("/"); var nowday = new Date(); //今日の日付 var xday = new Date(hairetu[0],hairetu[1] - 1,hairetu[2]);//基準になる日 var countday9 = Math.ceil((xday.getTime() - nowday.getTime()) / (1000 * 60 * 60 * 24)); inputDay10 = "変数10"; //指定日を変数に var hairetu = inputDay10.split("/"); var nowday = new Date(); //今日の日付 var xday = new Date(hairetu[0],hairetu[1] - 1,hairetu[2]);//基準になる日 var countday10 = Math.ceil((xday.getTime() - nowday.getTime()) / (1000 * 60 * 60 * 24)); inputDay11 = "変数11"; //指定日を変数に var hairetu = inputDay11.split("/"); var nowday = new Date(); //今日の日付 var xday = new Date(hairetu[0],hairetu[1] - 1,hairetu[2]);//基準になる日 var countday11 = Math.ceil((xday.getTime() - nowday.getTime()) / (1000 * 60 * 60 * 24)); inputDay12 = "変数12"; //指定日を変数に var hairetu = inputDay12.split("/"); var nowday = new Date(); //今日の日付 var xday = new Date(hairetu[0],hairetu[1] - 1,hairetu[2]);//基準になる日 var countday12 = Math.ceil((xday.getTime() - nowday.getTime()) / (1000 * 60 * 60 * 24)); if (countday1 < 0)document.write("111"); if (countday2 < 0)document.write("222"); if (countday3 < 0)document.write("333"); if (countday4 < 0)document.write("444"); if (countday5 < 0)document.write("555"); if (countday6 < 0)document.write("666"); if (countday7 < 0)document.write("777"); if (countday8 < 0)document.write("888"); if (countday9 < 0)document.write("999"); if (countday10 < 0)document.write("101010"); if (countday11 < 0)document.write("111111"); if (countday12 < 0)document.write("121212"); --> </script>

専門家に質問してみよう