【发布时间】:2020-12-15 00:27:28
【问题描述】:
我想跳过禁用日期。
工作:代码可以跳过数组中的日期:
var disabledDates = ["2020-08-07","2020-08-06"] <br />
不工作:代码不会跳过禁用日:
var day = day.getDay();
var monday = 1;
工作 jsfiddle: http://jsfiddle.net/9Lfjdh54/4/
var disabledDates = ["2020-08-07", "2020-08-06"]
$("#picker").datepicker({
beforeShowDay: function(day) {
const string = jQuery.datepicker.formatDate('yy-mm-dd', day);
var day = day.getDay();
var monday = 1;
if (day != monday) {
return [true] && [disabledDates.indexOf(string) == -1]
} else {
return [false]
}
}
});
$('.next-day').on("click", function() {
var date = $('#picker').datepicker('getDate');
do {
date.setTime(date.getTime() + (1000 * 60 * 60 * 24));
var string = jQuery.datepicker.formatDate('yy-mm-dd', date);
}
while (disabledDates.indexOf(string) >= 0);
$('#picker').datepicker("setDate", date);
});
$('#picker').datepicker();
<script type="text/javascript" src="//code.jquery.com/jquery-1.9.1.js"></script>
<script type="text/javascript" src="//code.jquery.com/ui/1.9.2/jquery-ui.js"></script>
<link rel="stylesheet" type="text/css" href="//code.jquery.com/ui/1.9.2/themes/base/jquery-ui.css">
<div id="picker"></div>
<br/><br/>
<button class="next-day">Next</button>
【问题讨论】:
-
问题是星期一下的日子没有被跳过,但数组中规定的日子是 skippef 我想跳过所有禁用的日期
-
你看到我的 jsfiddle 了吗?尝试按下一步它不会跳过星期一以下的日子,因为跳过了 3 个禁用日期。
标签: javascript jquery date datepicker jquery-ui-datepicker