代码之家  ›  专栏  ›  技术社区  ›  Michael Morisy

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

  •  0
  • Michael Morisy  · 技术社区  · 16 年前

    我正在创建一个Drupal表单,其中包含一个基于日期时间的javascript弹出式日历输入,允许用户为什么时候想要取或取东西设置日期。但是,我找不到一种方法来限制哪些日期可以作为输入选择。例如,如果我们只在星期一、星期三、星期五营业,我不希望人们能够使用选择器来表示他们想在星期天取车。

    我一直在寻找日历输入验证和可用的阻塞机制,但到目前为止还没有运气。

    2 回复  |  直到 16 年前
        1
  •  1
  •   googletorp    16 年前

    Drupal使用jQuery日期选择器来选择日期。我还没有研究日期模块是如何实现JS的,但是您可能可以为它添加额外的选项。或者,您也可以自己添加日期选择器。您可以很容易地通过jquery日期选择器获得所需的内容:

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

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

        2
  •  0
  •   Mike Crittenden    16 年前

    我认为你最好的选择是找到你能找到的最简单的日期选择器(因为最简单的通常是==最容易修改),然后硬编码,以便在构建日期选择器时跳过那些你不想要的日子。

    但是,这只修复了它的JS端,因此您可能需要编写一个小的自定义模块来进行服务器端验证。