日期选择器始终以默认日期打开,而不是以没有 DAYS 的格式输入日期
Datepicker always opening with defaultDate instead of input date with format without DAYS
我想引用一个我在网上很难找到的解决方案 jqueryUI 日期选择器。
使用这些选项创建日期选取器时(假设 fromDate 和 toDate 是 2 个日期对象):
{
changeMonth: true,
changeYear: true,
minDate: fromDate,
maxDate: toDate,
defaultDate: toDate,
dateFormat: 'MM yy'
}
每当您打开DP时,您都会获得默认日期,而不是先前选择的日期。
我尝试使用 OnClose 设置日期事件,该事件将正确设置内部日期和输入日期,但不能正确设置select option
值。这里的例子:http://jsfiddle.net/techunter/Y8MZ4/
在 1.9 中小提琴,但也用 jQuery 1.10 进行了测试
全部功劳归于: http://jquerybyexample.blogspot.com/2012/06/show-only-month-and-year-in-jquery-ui.html
这里没有魔法,您需要手动更新选择选项。
beforeShow: function () {
if ((selDate = $(this).val()).length > 0)
{
iYear = selDate.substring(selDate.length - 4, selDate.length);
iMonth = jQuery.inArray(selDate.substring(0, selDate.length - 5),
$(this).datepicker('option', 'monthNames'));
$(this).datepicker('option', 'defaultDate', new Date(iYear, iMonth, 1));
$(this).datepicker('setDate', new Date(iYear, iMonth, 1));
}
}
顺便说一句,我更喜欢在beforeShow
和onClose
期间隐藏和显示日日历。
相关文章:
- 将日期添加到日期输入字段Angular
- 离子/角度日期输入使用时刻以编程方式设置
- 开始日期和结束日期输入字段的 JQuery 筛选器表
- 正在侦听HTML日期输入的更改
- 关于如何将日期输入值与最小/最大日期范围进行比较的建议
- 在Javascript中填充日期和日期:输入:月和年
- 使用angularJS设置HTML5日期输入字段的默认值
- 为什么我的AngularJS ngModel绑定到时间输入,而不绑定到日期输入
- 如何在引导日期输入中使今天的日期默认值
- 如何通过Javascript编辑HTML中日期输入的值
- JavaScript 中的日期输入类型验证
- angularjs 中的日期输入有些奇怪
- 验证日期输入 - 最小值和最大值
- 仅 angularjs 日期输入
- 轨道 - 日期输入格式
- 如何使用另一个日期输入字段将日期设置为输入字段
- 日期输入类型 HTML 中的变量“min”
- 添加使用 JS 的日期输入的第二次使用使它们都不起作用
- 使用提交验证日期输入字段
- 在 JavaScript 中对日期输入进行单元测试处理,而不考虑时区