尝试编写Drupal日历输入黑名单

时间:2009-12-31 18:23:53

标签: drupal calendar blacklist

我正在创建一个Drupal表单,其中包含基于日期时间的javascript弹出日历输入,允许用户设置他们想要提取或放弃的日期。但是,我找不到一种方法来限制可选择的日期作为输入。例如,如果我们只在星期一 - 星期三 - 星期五开放,我不希望人们能够使用选择器来表明他们想要在星期日取件。

我对日历输入验证和可用的阻止机制看起来很低,但到目前为止还没有运气。

2 个答案:

答案 0 :(得分:1)

Drupal使用jQuery datepicker来选择日期。我没有看过Date模块如何实现js,但你可以为它添加额外的选项。或者,您可以自己添加日期选择器。你可以很容易地使用jQuery datepicker获得你想要的东西:

$("#test").datepicker({
    beforeShowDay: function(date) {
        if (date.getDay() % 2 == 1 && date.getDay() < 6) {
            return [true];
        }
        else {
           return [false];
        }
    }
});

beforeShowDay是一个每天运行的函数,应该返回一个列表,其中第一个项是布尔值,决定你是否可以选择日。第二个值是要添加的可选类,还有第三个值也可以使用,但不记得现在是什么。

答案 1 :(得分:0)

我认为你最好的选择是找到你能找到的最简单的日期选择器(因为最简单的通常==最容易修改),只需硬编码就可以跳过你建立日期选择器时你不想要的日子。

然而,这只是修复了它的JS方面,所以你可能想要编写一个小的自定义模块来进行服务器端验证。