Вы можете сделать это следующим образом: добавьте 0 в случае, если значение для месяца меньше 10, потому что вы получаете 6 июня как значение для m
, а не 06. Также исправьте опечатку «highlighdate» в return [true, 'highlighdate', ''];
на «выделить дату».
var highlightdate = ["2020-06-19", "2020-06-20", "2020-06-26", "2020-06-25", "2020-06-30"];
var date = new Date();
jQuery(document).ready(function() {
$("#datepicker").datepicker({
dateFormat: 'yy-mm-dd',
beforeShowDay: function(date) {
var m = date.getMonth(),
d = date.getDate(),
y = date.getFullYear();
if (m < 10) {
m = "0" + (m + 1);
}
else {
m = m + 1
}
for (i = 0; i < highlightdate.length; i++) {
if ($.inArray(y + '-' + m + '-' + d, highlightdate) != -1) {
return [true, 'highlightdate', ''];
}
}
return [true];
}
});
});
.highlightdate {
background-color: #ff0;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link href = "https://code.jquery.com/ui/1.10.4/themes/ui-lightness/jquery-ui.css"rel = "stylesheet">
<script src = "https://code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
<div id="datepicker"></div>