2017-03-08 10 views
1

私は自分のホームページにjQuery DatePickerを統合しました。問題は、すでにbeforeShowDayを使用して特定の日付をマークしているので、私はbeforeShowDay関数で週末を無効にできないということです。 beforeShowDay機能がないと週末を無効にする可能性があることを願っています。あなたはまだbeforeShowDayを使用することができますjquery datepicker beforeShowDayなしの週末を無効にする

$(function() { 
    var eventDates = {}; 
    <?php 
    for ($i = 0; $i <= sizeof($view) - 1; $i++) 
    { 
     $date = explode(":" , $view[$i]); 
     echo "eventDates[ new Date('" . $date[1] . "')] = new Date('" . $date[1] . "');"; 
    } 
    ?> 

    $("#datepicker").datepicker({ 
    firstDay: 1, 
    dateFormat: "yy-mm-dd", 
    maxDate: new Date, 
    minDate: "2016-03-08", 
    dayNames: ['Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag'], 
    dayNamesShort: ['So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'], 
    dayNamesMin: ['So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'], 
    onSelect: function(dateText, inst) { 
     $("#datepicker_value").val(dateText); 
     $(this).parent('form').submit(); 
    }, 
    beforeShowDay: function(date) { 
     var highlight = eventDates[date]; 
     if (highlight) { 
     return [true, "eventyellow", '']; 
     } else { 
     return [true, '', '']; 
     } 
    } 
    }); 
}); 

答えて

0

、あなただけの週末を除外することで、あなたの現在のロジックを組み合わせる必要があります。

jQueryUIのdatepickerを使用していて、週末を除外するメソッドが組み込まれているとします($.datepicker.noWeekends();)。それは私のために動作しません

beforeShowDay: function(date) { 
    // exclude weekends 
    if (!$.datepicker.noWeekends(date)[0]) 
    return [false, '', ''];  

    // highlight dates 
    return [true, eventDates[date] ? 'eventyellow' : '', '']; 
} 

Working example

+0

:これを試してみてください。 私が(コピー&ペースト)のurコードを使用すると、すべての日付が無効になります。 – Simon

+0

申し訳ありません - 私はロジックが逆でした。私は答えを更新し、実際の例を追加しました。 –

+0

うわー。ウルの助けをありがとう。できます。 – Simon

関連する問題