2

我有 mulitdatepicker,我需要禁用所有日期,除了那些从“defaultDate”开始每 2 周的日期。

因此,如果当前日期设置为 5 月 6 日星期四,我需要禁用它之前的所有天,然后禁用到 5 月 20 日星期四(从 6 日起 2 周)之前的所有天。然后在 6 月 3 日之前再次禁用 2 周...(从 20 日起 2 周)等。

因此,唯一可选择的日期是从默认日期开始每 2 周。

jQuery('.multidatepicker').multiDatesPicker({
    dateFormat: "d M yy", 
    defaultDate: '6 May 2021',
    maxDate: 72,
    minDate: new Date(),
    addDisabledDates: ??? //Do I add something here?
}); 

4

1 回答 1

2

你可以这样做:在数组中推送禁用日期

var defaultDate = new Date("6 May 2021");
var datedeb = new Date(defaultDate);
var maxDate = 72;

var arDate=[];
var enable = false;

for(var i = 1; i <maxDate; i++)
{
    enable = i % 14 == 0;
    var newdate = new Date(datedeb.setDate(datedeb.getDate() + 1));
    if(!enable)arDate.push(newdate);  

}

jQuery('.multidatepicker').multiDatesPicker({
    dateFormat: "d M yy", 
    defaultDate: defaultDate,
    maxDate: maxDate,
    minDate: defaultDate,
 addDisabledDates: arDate
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script>
<link href="https://code.jquery.com/ui/1.12.1/themes/pepper-grinder/jquery-ui.css" rel="stylesheet"/>

<script src="https://cdn.rawgit.com/dubrox/Multiple-Dates-Picker-for-jQuery-UI/master/jquery-ui.multidatespicker.js"></script>
<link href="https://cdn.rawgit.com/dubrox/Multiple-Dates-Picker-for-jQuery-UI/master/jquery-ui.multidatespicker.css" rel="stylesheet"/>
<div class ="multidatepicker" id="mdp-demo"></div>

于 2021-05-03T18:20:47.053 回答