【问题标题】:Bootstrap date picker disabled css not working引导日期选择器禁用 css 不起作用
【发布时间】:2015-12-18 11:02:01
【问题描述】:

我正在使用bootstrap datepicker。我已将 datepicker 的 minimum date 设置为 current date。它工作正常,我可以选择仅从当前日期开始的日期。问题是虽然以前的日期被禁用,但用户无法区分活动日期和禁用日期(他只能通过将鼠标悬停在相应的日期上来做到这一点)。

如何将禁用日期设置为fade,以便用户只需选择日期选择器即可理解。

 $('.dueDate').datepicker({
        autoclose: true,
        startDate: '+0d', // set default to today's date  
        datesDisabled:??//How can I set this option         
    })

【问题讨论】:

  • 嗨,ksg,您能否提供更多关于确切问题的信息?因为我似乎无法理解您要做什么。该示例显示了您的代码并且确实有效:jsfiddle.net/zcvq0yhh/16
  • Mate 问题已经通过给出下面提到的 css 解决了,我已经标记了答案。

标签: css bootstrap-datepicker


【解决方案1】:

您可以使用startDate 字段来指定您希望日历开始的时间,默认情况下这应该使禁用的日期看起来褪色/不可选择。

您还可以使用daysOfWeekDisabled 禁用一周中的某些天,例如周末。

例如:

 $("#datepicker").datepicker({
     startDate: "dateToday",
     daysOfWeekDisabled: "0,6",
     todayHighlight: true,
 })

编辑:

如果这不起作用,则可能是您的 css 有问题。

您可以在下面添加类似这样的内容(默认情况下应该在您的 bootstrap-datepicker3.css 文件中):

.datepicker table tr td.disabled,
.datepicker table tr td.disabled:hover {
  background: none;
  color: #999999;
  cursor: default;
}

【讨论】:

  • 为什么 daysOfWeekDisabled 优于 setDatesDisabled
  • 那么可能是在您的 CSS 中,这些字段没有显示为禁用。
  • @JonnyHenly 您可以使用任何一种,但它们都做不同的事情。 'daysOfWeekDisabled' 用于设置每周禁用一周中的某些天,例如周末。 'setDatesDisabled' 用于设置禁用一年中的特定日期,例如假期。
  • @Wellspring 哦,明白了。很好的答案,迄今为止最好的答案。
【解决方案2】:

你可以用这个

var nowDate = new Date();
var today = new Date(
    nowDate.getFullYear(),
    nowDate.getMonth(),
    nowDate.getDate(), 0, 0, 0, 0
);

$('#date').datepicker(
    { 
        startDate: today 
    }
);

【讨论】:

  • “简洁是可以接受的,但更全面的解释更好。” - How do I write a good answer?
  • 所有这些开销都是不必要的,因为eternicode/bootstrap-datepicker 支持相对时间增量字符串。见docs
猜你喜欢
  • 2013-08-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-07-01
  • 1970-01-01
  • 2016-10-15
相关资源
最近更新 更多