我使用日期选择器在两个日期字段中选择日期(从日期和到日期)。
在这些中,默认突出显示的日期是今天的日期。我需要在第二个日期选择器中将默认突出显示的日期更改为其他日期。(以今天+8天为例)。
我如何正确地做到这一点?
以下是我的约会对象
$(function() {
$( "#datepicker" ).datepicker();
$( "#datepicker" ).datepicker("option", "dateFormat", "yy-mm-dd"); // ISO 8601
$( "#datepicker2" ).datepicker();
$( "#datepicker2" ).datepicker("option", "dateFormat", "yy-mm-dd");
});
字符串
- 谢谢-谢谢
根据迈克尔的屏幕截图
x1c 0d1x的数据
我写了以下内容,
$( "#datepicker2" ).datepicker("option", "defaultDate", +2);
型
你仍然可以看到21天(今天)是突出显示的,23天是用黑线包围的。我想看看23号在灯光下看起来像21号。21、不需要强调
6条答案
按热度按时间vltsax251#
字符串
来源:http://api.jqueryui.com/datepicker/#option-defaultDate
编辑:当前日期将始终作为日期选择器的一部分突出显示。没有关闭此功能的选项。它是为了向用户明确“今天”是什么。但是,您可以使用一些CSS覆盖此图形外观:
型
工作jsfiddle:http://jsfiddle.net/EpWud/
这假设你使用的是默认主题-但是你可以对任何主题做同样的练习。只需像上面的代码一样覆盖样式。但是,这个CSS是不完整的。您需要对其他情况进行覆盖,例如:hover状态。
oiopk7p52#
对jQuery UI DatePicker change highlighted "today" date中所选答案的一个小调整
字符串
我已经覆盖了2个日期选择器方法,有条件地使用新的“今天”日期设置,而不是
new Date()
。新设置称为localToday
。像这样覆盖
$.datepicker._gotoToday
和$.datepicker._generateHTML
:型
下面是一个demo,它显示了完整的代码和用法:http://jsfiddle.net/NAzz7/5/
jvlzgdj93#
我对UI核心显示defaultDate的方式不太满意,它的边框很脆弱。经过多次尝试和错误,我向第二个datepicker添加了一个焦点方法,并使用了setDate方法。
字符串
这将给予你一个基于主题的背景颜色的选定日期,今天也将保留它的背景时,日期选择器打开。这里唯一的缺点是,如果你没有从日期选择器中选择日期,你必须返回并清除输入字段。
看起来有点乱,因为我通常不喜欢使用焦点方法,但我坚持使用它。
wa7juj8i4#
这可以通过更改jquery-ui.js中_generateHTML下的变量来实现
字符串
hc8w905p5#
使用onSelect选项。它应该看起来像这样:
个字符
mftmpeh86#
突出显示
defaultDate
的另一种解决方案是覆盖与所选defaultDate
对应的CSS类:字符串
演示jsfiddle:http://jsfiddle.net/0vjadze4/(突出显示
today
和defaultDate
)当然,您可以将其与the answer provided by Mickael结合使用,以仅突出显示
defaultDate
:`型
演示jsfiddle:http://jsfiddle.net/43svpe80/1/(仅突出显示
defaultDate
)