我想使用jQuery datepicker來顯示日期只在每年7月和8月,它的作品除了削減8月31日。我也試過從七月中旬到中期9月,它顯示除8月31日之外的所有這些日子。datepicker()不顯示所有要求的日期
jQuery的
function generateDates(){
var availableDates = {};
var startYear = (new Date()).getUTCFullYear();
var endYear = 2050;
for(var currentYear = startYear; currentYear <= endYear; currentYear++){
//Loop over every year from current year to 2050
for (var d = new Date(currentYear, 7, 1); d <= new Date(currentYear, 8, 31); d.setDate(d.getDate() + 1)) {
availableDates[d.getUTCFullYear() + "-0" + d.getUTCMonth() + "-" + (d.getUTCDate() <= 9 ? "0" + d.getUTCDate() : d.getUTCDate())] = 1;
}
}
return availableDates;
}
$(function() {
var dates_allowed;
dates_allowed = generateDates();
$('#datepicker').datepicker({
// these aren't necessary, but if you happen to know them, why not
minDate: 0,
maxDate: new Date(2050, 8, 31),
// called for every date before it is displayed
beforeShowDay: function(date) {
// prepend values lower than 10 with 0
function addZero(no) {
if (no < 10){
return "0" + no;
} else {
return no;
}
}
var date_str = [
addZero(date.getFullYear()),
addZero(date.getMonth() + 1),
addZero(date.getDate())
].join('-');
if (dates_allowed[date_str]) {
return [true, 'good_date', 'This date is available'];
} else {
return [false, 'bad_date', 'We are sorry, this date is not available'];
}
}
});
});
HTML
<input id="datepicker" name="startdate" required>
任何幫助將非常感激。
問候
李
感謝感謝那工作過一種款待 –
@LeeChant歡迎您! –