$(function() { datepickerset('datepicker','day1','time1'); datepickerset('datepicker2','day2','time2'); datepickerset('datepicker3','day3','time3'); }); function datepickerset(num1,num2,num3){ var holidays = holidayslist(); var hide = hidelist(); $("."+num1).datepicker({ yearSuffix:"/", monthNames: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12'], dayNames: ['SUN', 'MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT'], dayNamesMin: ['SUN', 'MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT'], showOn: "both", //buttonImage: "./img/cal.png", buttonImageOnly: true, showOtherMonths: true, selectOtherMonths: true, dateFormat: 'yy/m/d(DD)', //表示フォーマット minDate: '+1d', //当日予約不可 maxDate: '+4w', //4週間 //minDate: new Date(2021, 10, 6), //maxDate: new Date(2021, 10, 26), beforeShowDay: function(day) { var result; switch (day.getDay()) { //case 1: //月曜日を選択できないようにする //result = [false,'']; //break; //case 2: //火曜日を選択できないようにする //result = [false,'']; //break; case 3: //水曜日を選択できないようにする result = [false,'']; break; case 4: //木曜日を選択できないようにする result = [false,'']; break; //case 5: //金曜日を選択できないようにする //result = [false,'']; //break; case 0: //日曜 result = [true, 'sunday']; break; case 6: //土曜 result = [true, 'saturday']; break; default: result = [true,'']; // それ以外は選択できる break; } //20190418 //第3火曜定休 //getWeekOfDay( year, month, week(1から), day(0から) ) // var htime_t2 = getWeekOfDay(day.getFullYear(), day.getMonth()+1, 3, 2).replace(/-/g,'/'); // var htime2 = Date.parse(htime_t2); // 非表示を 'YYYY-MM-DD' から time へ変換 // var hiday2 = new Date(); // hiday2.setTime(htime2); // 上記 time を Date へ設定 // // // 非表示 // if (hiday2.getYear() == day.getYear() && // hiday2.getMonth() == day.getMonth() && // hiday2.getDate() == day.getDate()) { // result = [false,'']; // } //20190418 for (var i = 0; i < holidays.length; i++) { var htime_t = holidays[i].replace(/-/g,'/'); var htime = Date.parse(htime_t); // 祝日を 'YYYY-MM-DD' から time へ変換 var holiday = new Date(); holiday.setTime(htime); // 上記 time を Date へ設定 // 祝日 if (holiday.getYear() == day.getYear() && holiday.getMonth() == day.getMonth() && holiday.getDate() == day.getDate()) { result = [true, 'holiday']; } } for (var i = 0; i < hide.length; i++) { var htime_t = hide[i].replace(/-/g,'/'); var htime = Date.parse(htime_t); // 祝日を 'YYYY-MM-DD' から time へ変換 var hiday = new Date(); hiday.setTime(htime); // 上記 time を Date へ設定 // 祝日 if (hiday.getYear() == day.getYear() && hiday.getMonth() == day.getMonth() && hiday.getDate() == day.getDate()) { result = [false,'']; } } //急遽仕方なく var hogedesu = [ '2020-08-12', '2020-08-13' ]; for (var i = 0; i < hogedesu.length; i++) { var hotime_t = hogedesu[i].replace(/-/g,'/'); var hotime = Date.parse(hotime_t); // 祝日を 'YYYY-MM-DD' から time へ変換 var hoiday = new Date(); hoiday.setTime(hotime); // 上記 time を Date へ設定 // 祝日 if (hoiday.getYear() == day.getYear() && hoiday.getMonth() == day.getMonth() && hoiday.getDate() == day.getDate()) { result = [true,'']; } } //急遽仕方なく return result; }, onSelect: function(dataText, inst){ //aloha = $("#"+num1).val(); //$("#"+num2).val(aloha); hyouji(num2,num3); } }); } function hyouji(num1,num2){ var result_day = JSON.parse('["2014\u5e746\u670827\u65e5\uff08\u571f\uff09\/*\u5fc5\u8981\u306a\u30c7\u30fc\u30bf\u306a\u306e\u3067\u6d88\u3055\u306a\u3044\u3067","2024\/2\/27\uff08TUE\uff09","2024\/3\/10\uff08SUN\uff09","2024\/3\/11\uff08MON\uff09","2024\/3\/12\uff08TUE\uff09","2024\/3\/13\uff08WED\uff09","2024\/3\/14\uff08THU\uff09","2024\/3\/15\uff08FRI\uff09","2024\/3\/16\uff08SAT\uff09","2024\/3\/17\uff08SUN\uff09","2024\/3\/1\uff08FRI\uff09","2024\/3\/20\uff08WED\uff09","2024\/3\/23\uff08SAT\uff09","2024\/3\/24\uff08SUN\uff09","2024\/3\/2\uff08SAT\uff09","2024\/3\/31\uff08SUN\uff09","2024\/3\/3\uff08SUN\uff09","2024\/3\/4\uff08MON\uff09","2024\/3\/5\uff08TUE\uff09","2024\/3\/6\uff08WED\uff09","2024\/3\/7\uff08THU\uff09","2024\/3\/8\uff08FRI\uff09","2024\/3\/9\uff08SAT\uff09","2024\/5\/3\uff08FRI\uff09"]'); var result_time1 = JSON.parse('[0,2,0,2,2,0,0,2,1,1,1,1,1,0,0,2,0,0,0,0,0,0,1,2]'); var result_time2 = JSON.parse('[0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2]'); var result_time3 = JSON.parse('[0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2]'); var result_time4 = JSON.parse('[0,2,1,2,2,0,0,2,1,1,3,1,1,1,0,2,0,0,0,0,0,0,1,2]'); var result_time5 = JSON.parse('[0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2]'); var result_time6 = JSON.parse('[0,2,1,2,2,0,0,2,2,1,0,1,1,1,0,2,0,0,0,0,0,0,1,2]'); var result_time7 = JSON.parse('[0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2]'); var result_time8 = JSON.parse('[0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2]'); var result_time9 = JSON.parse('[0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2]'); var result_time10 = JSON.parse('[0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2]'); var holidays = holidayslist(); var shukujitsu = 0; val = $("#"+num1+"a").val(); for (var i = 0; i < holidays.length; i++) { var htime_t = holidays[i].replace(/-/g,'/'); var htime = Date.parse(htime_t); var holiday = new Date(htime); y = holiday.getFullYear(); m = holiday.getMonth()+1; d = holiday.getDate(); var hoge = y+"/"+m+"/"+d+"("; if(!val.indexOf(hoge)){ shukujitsu = 1; break; } } for(var i = 0;i < result_day.length;i++){ var hage = result_day[i]; hige = new RegExp(hage); if(val.match(hige)){ if ((val.match(/(SAT)/)) || (val.match(/(SUN)/)) || (shukujitsu == 1)) { hyoujiyou0 = "
希望日時

" + val + "

希望時間

"; hyoujiyou15 = ""; }else{ hyoujiyou0 = "
希望日時

" + val + "

希望時間

"; hyoujiyou15 = ""; } break; }else{ if ((val.match(/(SAT)/)) || (val.match(/(SUN)/)) || (shukujitsu == 1)) { hyoujiyou0 = ""; hyoujiyou1 = "
希望日時

" + val + "

希望時間

"; hyoujiyou10 = ""; hyoujiyou11 = ""; hyoujiyou12 = ""; hyoujiyou13 = ""; hyoujiyou14 = ""; hyoujiyou15 = ""; }else{ hyoujiyou0 = ""; hyoujiyou1 = "
希望日時

" + val + "

希望時間

"; hyoujiyou10 = ""; hyoujiyou11 = ""; hyoujiyou12 = ""; hyoujiyou13 = ""; hyoujiyou14 = ""; hyoujiyou15 = ""; } } } hyoujiyou = hyoujiyou0 + hyoujiyou1 + hyoujiyou2 + hyoujiyou3 + hyoujiyou4 + hyoujiyou5 + hyoujiyou6 + hyoujiyou7 + hyoujiyou8 + hyoujiyou9 + hyoujiyou10 + hyoujiyou11 + hyoujiyou12 + hyoujiyou13 + hyoujiyou14 + hyoujiyou15; document.getElementById("hyouji_"+num1+"a").innerHTML= hyoujiyou; } function hyouji2(num1,num2){ val = $("#"+num1+"a").val(); var time1 = $('[name="'+ num2 + '"] option:selected').val(); var dayhoge = val+time1; $("#"+num1).val(dayhoge); } //非表示 function hidelist() { var hidehide = [ //'2014-08-08', '2024-03-01' ]; return hidehide } //20190403 function getWeekOfDay(year, month, week, day) { var date = new Date(year+"/"+month+"/1"); var firstDay = date.getDay(); var day = day - firstDay + 1; if(day <= 0) day += 7; day += 7 * (week - 1); result = new Date(year+"/"+month+"/"+day); var Y = parseInt(result.getFullYear()); var m = parseInt(result.getMonth())+1; var d = parseInt(result.getDate()); return (Y+"-"+m+"-"+d); } //20190403