回答編集履歴
3
chousei
    
        answer	
    CHANGED
    
    | @@ -42,4 +42,41 @@ | |
| 42 42 |  | 
| 43 43 | 
             
            > (3週間先ということで、月の中旬以降にアクセスした際に次月も見えた方が良いため)
         | 
| 44 44 |  | 
| 45 | 
            -
            minDateを設定すると選択できる最初の月が表示されるはずです
         | 
| 45 | 
            +
            minDateを設定すると選択できる最初の月が表示されるはずです
         | 
| 46 | 
            +
             | 
| 47 | 
            +
            # 注記
         | 
| 48 | 
            +
            jqueryは古い仕組みのためあえてconstやletではなくvarで変数宣言しています
         | 
| 49 | 
            +
             | 
| 50 | 
            +
            # 調整版
         | 
| 51 | 
            +
            ```html
         | 
| 52 | 
            +
            <link rel="stylesheet" href="https://code.jquery.com/ui/1.13.2/themes/base/jquery-ui.css" />
         | 
| 53 | 
            +
            <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
         | 
| 54 | 
            +
            <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.13.2/jquery-ui.min.js"></script>
         | 
| 55 | 
            +
            <script>
         | 
| 56 | 
            +
            $(function(){
         | 
| 57 | 
            +
              var dateFormat='yy/mm/dd';
         | 
| 58 | 
            +
              // 祝日はリストを作って対応する
         | 
| 59 | 
            +
              var disableDates = [
         | 
| 60 | 
            +
                "2025/07/21",
         | 
| 61 | 
            +
                "2025/08/11",
         | 
| 62 | 
            +
                ];
         | 
| 63 | 
            +
              var is_mobile=window.matchMedia('(max-width: 767px)').matches;
         | 
| 64 | 
            +
              var numberOfMonths=is_mobile?1:2;
         | 
| 65 | 
            +
              $('.calendar').datepicker({
         | 
| 66 | 
            +
              minDate: '+21d',
         | 
| 67 | 
            +
              dateFormat:dateFormat,
         | 
| 68 | 
            +
              numberOfMonths:numberOfMonths,
         | 
| 69 | 
            +
              beforeShowDay:function(date) {
         | 
| 70 | 
            +
                var disableDate = $.datepicker.formatDate(dateFormat, date);
         | 
| 71 | 
            +
                if($.inArray(disableDate,disableDates)>-1) return [false,'mydisabled',''];
         | 
| 72 | 
            +
                if(date.getDay()==0) return [false,'sunday',''];
         | 
| 73 | 
            +
                if(date.getDay()==3) return [false,'wednesday',''];
         | 
| 74 | 
            +
                if(date.getDay()==6) return [false,'saturday',''];
         | 
| 75 | 
            +
                return [true,'',''];
         | 
| 76 | 
            +
              }
         | 
| 77 | 
            +
              });
         | 
| 78 | 
            +
            });
         | 
| 79 | 
            +
            </script>
         | 
| 80 | 
            +
            <input class="calendar">
         | 
| 81 | 
            +
            <input class="calendar">
         | 
| 82 | 
            +
            ```
         | 
2
chousei
    
        answer	
    CHANGED
    
    | @@ -38,4 +38,8 @@ | |
| 38 38 |  | 
| 39 39 | 
             
            > 上記に加えて、PC版とモバイル版のカレンダー表示数を変えたいのですが、どこに加筆すれば良いのか分かりません。
         | 
| 40 40 |  | 
| 41 | 
            -
            なにをどうしたいのでしょうか?
         | 
| 41 | 
            +
            なにをどうしたいのでしょうか?
         | 
| 42 | 
            +
             | 
| 43 | 
            +
            > (3週間先ということで、月の中旬以降にアクセスした際に次月も見えた方が良いため)
         | 
| 44 | 
            +
             | 
| 45 | 
            +
            minDateを設定すると選択できる最初の月が表示されるはずです
         | 
1
調整
    
        answer	
    CHANGED
    
    | @@ -34,6 +34,7 @@ | |
| 34 34 | 
             
            > カレンダーの選択可能日を3週間先にしたいのですが、下記を見ても分かりませんでした。
         | 
| 35 35 |  | 
| 36 36 | 
             
            過去を選ばせたくないのか、3週間後から選ばせたいのか条件がわかりません。
         | 
| 37 | 
            +
            3週間後から選ばせたいならminDateを'+21d'(or 20d?)とかにすればよいです
         | 
| 37 38 |  | 
| 38 39 | 
             
            > 上記に加えて、PC版とモバイル版のカレンダー表示数を変えたいのですが、どこに加筆すれば良いのか分かりません。
         | 
| 39 40 |  | 
