To disable dates, use datesDisabledmethod to provide an array.
Some dates are disabled in this CodePen .
$("#picker").datepicker({
datesDisabled:["11/24/2016","11/28/2016","12/02/2016","12/23/2016"]
});
EDITThe previous answer was for Bootstap DatePicker ...
Sorry for the wrong reading, my bad.
Bootstrap DateRangePicker:
var disabledArr = ["11/24/2016","11/28/2016","12/02/2016","12/23/2016"];
$("#picker").daterangepicker({
isInvalidDate: function(arg){
console.log(arg);
var thisMonth = arg._d.getMonth()+1;
if (thisMonth<10){
thisMonth = "0"+thisMonth;
}
var thisDate = arg._d.getDate();
if (thisDate<10){
thisDate = "0"+thisDate;
}
var thisYear = arg._d.getYear()+1900;
var thisCompare = thisMonth +"/"+ thisDate +"/"+ thisYear;
console.log(thisCompare);
if($.inArray(thisCompare,disabledArr)!=-1){
console.log(" ^--------- DATE FOUND HERE");
return true;
}
}
}).focus();
CodePen.
EDIT ;), .
( ), , .
, :
$("#picker").on("apply.daterangepicker",function(e,picker){
var startDate = picker.startDate.format('MM/DD/YYYY')
var endDate = picker.endDate.format('MM/DD/YYYY')
console.log(startDate+" to "+endDate);
var clearInput = false;
for(i=0;i<disabledArr.length;i++){
if(startDate<disabledArr[i] && endDate>disabledArr[i]){
console.log("Found a disabled Date in selection!");
clearInput = true;
}
}
if(clearInput){
var today = new Date();
$(this).data('daterangepicker').setStartDate(today);
$(this).data('daterangepicker').setEndDate(today);
$(this).val("").focus();
console.log("Cleared the input field...");
alert("Your range selection includes disabled dates!");
}
});
CodePen .