在jQuery UI datepicker中标记选定日期
我正在使用jQuery UI的datepicker(http://docs.jquery.com/UI/Datepicker)。
听起来应该可以通过提供beforeShowDay
函数来标记某些日子(http://docs.jquery.com/UI/Datepicker#event-beforeShowDay)。 但我无法为此获得CSS。 我想让背景变绿了几天。
这是我迄今为止的JavaScript:
$(function() { $('.date').datepicker({ dateFormat: 'yy-mm-dd', firstDay: '1', showOtherMonths: 'true', beforeShowDay: daysToMark }); }); function daysToMark(date) { if (date.getDate() < 15) { return [true, 'markedDay', ""]; } return [true, '', ""]; }
这是css:
.markedDay { background-color: green; }
但没有变化。 我究竟做错了什么?
这样做了
.markedDay a.ui-state-default { background: green !important; } .markedDay a.ui-state-hover { background: red !important; }
如Nick Craver所指出的,不得不将样式添加到元素而不是td元素。 我还必须将jQuery UI生成的类名添加到a元素中,以使我的css规则比根据CSS级联规则的默认规则更重要。 最后一招是使用background
而不是background-color
来覆盖所使用的jQuery UI主题图像。