gpt4 book ai didi

php - 在 JQuery UI Datepicker 中使用 beforeShowDay 来结束一周中的几天

转载 作者:行者123 更新时间:2023-12-01 08:27:54 25 4
gpt4 key购买 nike

我想做的是在一周中的某些日子里关闭某个场所时将其灰显。每个场馆可能会在不同的日期关闭。

我可以使用以下代码作为测试来关闭所有星期日:

$('#bookingDatepicker').datepicker({
minDate: 0,
maxDate: '+3M',
dateFormat: 'DD, d MM, yy',
altField: '#actualDate',
altFormat: 'yy-mm-dd',
beforeShowDay: closedDays
});

function closedDays(date) {
if (date.getDay() == 0){
return [false,"","Venue Closed"];
} else { return [true, ""];
}
}

但是,我可能需要关闭超过一天,而且它们可能不会彼此相邻运行。在数据库中的代码中,我可以创建一个字符串,示例如下,显示开放日期...

1,2,3,4,5,6,0    //I would want to show no days closed
2,3,4,5,6 //I would want to show Sunday (0) and Monday (1) closed

我不知道该怎么做才能让上面的代码正常工作。我正在使用 PHP 创建字符串,因此可以在需要时使用它来操作它。

编辑

像往常一样,当您发布问题时,您会得到一个小小的突破!我开发了下面的代码,如果我使用其中的虚拟数据,它就可以工作,但是我需要找到一种将字符串值包装在“”中的方法。这现在给我带来了麻烦,如果我只使用 var cloDays = [2,3,4,5] 它就停止工作

var cloDays = ["2","3","4","5"]; 
function closedDays(date){
var sDate = date.getDay().toString();
if ($.inArray(sDate, cloDays) == -1) return [false,"","Venue Closed"];
else return [true, ""];
}

最佳答案

这篇文章没有解决我的问题,但为我指明了正确的方向。

这就是我想要的方式:

var unavailableDates = ["9-5-2011","10-5-2011"];

function unavailable(date) {
dmy = date.getDate() + "-" + (date.getMonth()+1) + "-" + date.getFullYear();
if ($.inArray(dmy, unavailableDates) == -1) {
return [true, ""];
} else {
return [false,"","Unavailable"];
}
}

$('#iDate').datepicker({ minDate: +1, beforeShowDay: unavailable });

这会阻止过去的所有日期(包括今天),然后阻止 unavailableDates 数组中指定的日期。

关于php - 在 JQuery UI Datepicker 中使用 beforeShowDay 来结束一周中的几天,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2333642/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com