jquery日期选择器年份范围默认值
jquery datepicker year range default
JQuery datePicker
有点问题,我怀疑这只是我忽略或弄错了一个设置的问题。
如果你看看这个简单的小提琴:JS fiddle
你会看到我已经设置了年份范围,这样默认情况下,当你点击输入时,它会在1994年打开,但如果你点击其中任何一个日期,例如9月3日,它实际上会在输入中显示为2012年,而不是下拉菜单中选择的年份。
我如何才能使它使用正确的年份,而不必更改下拉列表,然后再更改回?
干杯。
正如其他人所建议的,您必须设置defaultDate。然而,与其他解决方案不同的是,您不想硬编码日期,因为您的下拉列表将随着时间的推移而更新,因为您正在创建相对列表。
试试这个。。。
function loadDatePicker() {
$('.datePicker').datepicker({
dateFormat: 'yy-mm-dd',
changeYear: true,
changeMonth: true,
yearRange: "-18:-12",
defaultDate:"-18y-m-d" // Relative year/month/day
});
}
很奇怪,但在日期选择器选项中添加defaultDate:"1994-01-01"
似乎可以解决这个问题。
Fiddle
我想我明白原因了。。这是因为yearRange:只限制下拉菜单中的范围。它只是改变了列表,其他什么都没有。
他们把这个建在这里。。
http://jqueryui.com/demos/datepicker/#option-yearRange[注意,此选项仅影响下拉列表中显示的内容,使用minDate和/或maxDate选项限制可以选择的日期。]
为了证明这一点。。设置日期选择器如下,你会发现所有日期禁用。因为它让我们看到了2012年的卡兰德,而不是1994年的
$('.datePicker').datepicker({
dateFormat: 'yy-mm-dd',
changeYear: true,
changeMonth: true,
yearRange: "-18:-12",
maxDate: new Date(2012,1-1,1)
});
要修复它,你必须使用defaultDate以及minDate和maxDate
我希望我能清除
相关文章:
- 我的shareService在angular 2中发送值工作正常,但当我渲染我的另一个组件时,会获得默认值
- jquerydatetimepicker日期和时间应在框默认值中,而无需单击框
- 如果值为空,如何设置输入的默认值?jQuery
- 骨干模型默认值-todos.js示例中不必要的代码
- jquery日期选择器年份范围默认值
- 如何将输入范围的值传递给JS中的变量
- Html5输入属性的默认值,如最小值、最大值、大小等
- 根据两个下拉列表的默认值禁用按钮
- 如何创建具有默认值的JavaScript对象字段?(AngularJS模型相关)
- Angularjs-设置不带ng选项的select的默认值
- jQuery Datepicker从日期开始设置默认值
- 如何设置浏览器打开的文件对话框的文件名(一些默认值)
- JQuery BlockUI鼠标加载光标没有't在Google Chrome中返回默认值
- Selectize选择默认值
- 在KeystoneJS中为Types.Money设置默认值
- 是否可以同时为一个元素的所有事件指定阻止默认值
- 防止在IE7中按回车键时出现默认值
- 如何覆盖jqGrid's语言默认值
- 如何为显示jquery滑块值的文本框设置默认值
- 日期范围选择器默认值