【问题标题】:How to disable week days in jquery datepicker? (Enable only weekends and two specific festive days)如何在 jquery datepicker 中禁用工作日? (仅启用周末和两个特定的节日)
【发布时间】:2014-02-03 06:14:34
【问题描述】:

我很生气尝试这个... 如何在 jquery datepicker 中禁用工作日? (仅启用周末和两个特定的节日)

我尝试了很多在这里和外面显示的代码,但对我不起作用...

以及如何禁用年份下拉菜单?只想要今年

谁能帮帮我?? 提前致谢!

【问题讨论】:

    标签: javascript jquery user-interface datepicker


    【解决方案1】:

    以下是如何禁用工作日仅保留周末并添加自定义日期(您的两个特定节日日)。我不知道你的节日是什么日子,所以我在下面的示例中只使用了 1/15/2014 和 1/16/2014。

    Working Fiddle

    var availableDates = ["15-1-2014","16-1-2014"];
    
    $(function()
    {
        $('#txtDate').datepicker({ beforeShowDay:
          function(dt)
          { 
            return [dt.getDay() == 0 || dt.getDay() == 6 || available(dt), "" ];
          }
       , changeMonth: true, changeYear: false});
    });
    
    
    
    function available(date) {
      dmy = date.getDate() + "-" + (date.getMonth()+1) + "-" + date.getFullYear();
      if ($.inArray(dmy, availableDates) != -1) {
        return true;
      } else {
        return false;
      }
    }
    

    更新:我现在也删除了年份下拉菜单

    更新 2:所以您之前的所有尝试都不起作用的原因是您有一个包含的脚本(您的 html 文件的底部),该脚本将 datepicker 初始化代码应用于具有 class="datepicker" 的每个元素

    这会覆盖您在文件顶部尝试的任何内容。从您的 html 文件中删除以下行:

    <script type='text/javascript' src='http://entrestaciones.es/wp-content/plugins/gravityforms/js/datepicker.js?ver=1.8.1'></script>
    

    或从您不想自动初始化的输入元素中删除 `class="datepicker"

    【讨论】:

    • 我在这个网站上有以下时间表日期选择器:[link]entrestaciones.es/prueba-formulario我在 header.php 中添加了你的代码,但仍然不起作用...... :( 顺便说一句,如果你看到时间表,你可以下拉年份......我只想要今年(2014)无论如何感谢你的帮助,erikrunia!
    • 您的代码过于臃肿,日期选择器上的额外配置选项达到了我从未见过的水平。此外,您正在导入另一个脚本,该脚本实际上会自动初始化 .datepicker 对任何附加了 datepicker 类的元素的调用。此外,当您包含我的示例代码时,您没有更改 id 选择器,并且您没有名为 #txtDate 的元素(当然)。
    • 要修复,您需要使用#input_2_5 而不是#txtDate,并且您需要从ID为input_2_5的输入字段中删除“datepicker”类... 应该 让它工作,但有很多事情很难说
    • 感谢您的帮助 erikrunia!你之前说的脚本只是用西班牙语显示月份和年份。无论如何,我将其删除并仅将您的代码与#input_2_5 一起放置,但仍然无法正常工作……我原谅了什么?提前致谢!
    • 您不必删除它。我正在谈论的脚本在一个包含的文件中:entrestaciones.es/wp-content/plugins/gravityforms/js/…。您可以删除该文件的包含,或者您可以简单地从 input_2_5 输入中删除类“datepicker”。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-06
    • 1970-01-01
    • 2010-10-04
    相关资源
    最近更新 更多