我正在使用jQuery datepicker,我需要一个每隔一周禁用一次的功能。
例如:偶数周的所有日子(2,4,6 ..)已启用且可以选择 - 但奇数周的所有日子(1,3,5 ..)都被禁用且无法挑选。
我知道我可以在之前禁用特定日期/日期。但这不是我追求的......
任何解决方案?感谢。
答案 0 :(得分:5)
您可以使用datepicker
的 beforeShowDay
功能来禁用。下面的代码使用时间让一周更容易,但你也可以尝试别的东西:
$( function() {
$( "#datepicker" ).datepicker({
beforeShowDay:function(d){
var m=moment(d);
//week number is even
var en=m.week()%2===0;
//its first and monday
en|=(m.date()===1 && m.isoWeekday()===1);
return [en,"","Odd Week"];
}
});
});

<link href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://momentjs.com/downloads/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.js"></script>
<p>Date: <input type="text" id="datepicker"></p>
&#13;
更新以启用奇数周的第一个星期一。查看1-June-2015