问题描述
我正在尝试使用PHP禁用基于mySQL查询的已选择日期 我在javascript变量(var disabledDate)中得到了PHP结果。 这是我的代码:
$(function () {
$('#school').change(function(){ // this is dropdown
var dis_date;
var id = $(this).val();
var dis_date;
$.ajax({
type: "GET",url: "details.PHP",data: "pass_id="+id,success: success
});
function success(data) //data received here is ["2020/12/20","2020/12/19"]
{
var disabledDate = data.trim();
alert(disabledDate);
jQuery(function()
{
var date = new Date();
var currentMonth = date.getMonth();
var currentDate = date.getDate();
var currentYear = date.getFullYear();
$('#calender').datepicker
({
beforeShowDay:before,dateFormat: 'yy-mm-dd',minDate: new Date(currentYear,11,1),disabledDates: disabledDate,maxDate: new Date(currentYear,12,31)
});
});
var before= function(dt)
{
return [dt.getDay() === 0 || dt.getDay() === 6,""];
}
}
});
});
无法禁用datepicker中的日期。任何帮助!!!
解决方法
做这样的事情。
将要从数据库中获取的日期放入数组中。
var array = ["2020/12/20","2020/12/19"]
然后像这样编码。
$('#calender').datepicker({
beforeShowDay: function(date){
var string = jQuery.datepicker.formatDate('yy-mm-dd',date);
return [ array.indexOf(string) == -1 ]
}
});
查看演示here