仅在星期二和星期三的datepicker中设置默认日期?
我有一个日期选择器,所有过去几天都被禁用,除了星期二和星期三之外的所有日子都被禁用。
我希望默认的一天是一周中启用的第一天。 如果它是星期二,那么它应该显示星期二,如果星期三,然后星期三。 任何其他日子它应该在输入字段的下周二显示。
这是我用于datepicker的代码。
$(document).ready(function(){ $( ".datepicker" ).datepicker({ minDate:'0', changeMonth:true, changeYear:true, beforeShowDay: function(dt) { return [dt.getDay() === 2 || dt.getDay() === 3, ""]; }}); });
我正在使用选择器的输入:
你可以使用momentjs让一周中的第二天变得更容易,然后只需要一个if-else语句来获得一周中正确的日期:
function setDate() { var today = moment().isoWeekday(); //or just = new Date().getDay(); if (today <= 2) { return moment().isoWeekday(2); } else if (today === 3) { return moment().isoWeekday(3); } else { return moment().add(1, 'weeks').isoWeekday(2); } }
然后调用setDate()
函数并将该返回值设置为datepicker中的日期。
$('.datepicker').datepicker("setDate", new Date(setDate()));
这是一个有效的例子: https : //jsfiddle.net/jutcw0ve/