【问题标题】:How can I enable and disable specific date in php on demand?如何按需启用和禁用 php 中的特定日期?
【发布时间】:2016-03-23 05:34:12
【问题描述】:

我想启用特定日期并在完成任务后禁用它。我不知道如何开始以及首先要做什么。请建议我。

"02-03-2016","19-03-2016","23-03-2016",

【问题讨论】:

  • 很不清楚。请详细说明您的问题和需求
  • 最初启用当前日期。但是对于某些任务,我想启用以前的某些日期,并且在完成该任务后仅启用当前日期。

标签: javascript php jquery datepicker


【解决方案1】:

有点难以理解您的需求,但我猜您正在使用 datepicker,并且您想禁用和重新启用某些特定日期。

您可以在实例化日期选择器时使用beforeShowDay。在回答你的问题之前,让我们先提醒一下 beforeShowDate 的作用:

一个以日期为参数的函数,必须返回一个数组:

[0]: true/false indicating whether or not this date is selectable
[1]: a CSS class name to add to the date's cell or "" for the default presentation
[2]: an optional popup tooltip for this date

在日期选择器中每天调用该函数之前 显示出来。

因此,要禁用特定日期,您需要在函数 beforeShowDate 中返回 [false],如果您在参数中有要禁用的日期,则返回 [true]。所以我敦促你使用一个全局变量dateDisabledArray,在其中放置你想要禁用的所有日期。所以这是一个小代码,我禁用了这些日期:“2016-03-11”、“2016-03-02”和“2016-03-24”:

var dateDisabledArray = ["2016-03-11","2016-03-02","2016-03-24"];
$('input').datepicker({
    beforeShowDay: function(date){
        var string = jQuery.datepicker.formatDate('yy-mm-dd', date);
        return [ dateDisabledArray.indexOf(string) == -1 ]
    }
});

现在,如果您想重新启用之前的日期,您只需:

dateDisabledArray = [];

这是一个jsfiddle,我在其中单击禁用这些日期并在接下来的单击中重新启用它们。

【讨论】:

  • 今天当前日期是 3 月 25 日。所以我以前的日期被禁用了。但是对于某些任务,我必须按需启用一些日期。在您的示例中,日期被禁用,我希望它们被启用。
  • 我的示例只是向您展示了如何禁用日期。现在您需要做的就是更改示例中的变量array,并在其上添加您想要禁用的所有日期。
  • 我不想禁用日期。我的日历日期已被禁用。我想启用特定日期。
  • 对不起,我之前没有很好地理解你的问题。看看我的编辑,你会找到你需要的一切
猜你喜欢
  • 2011-07-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多