Jquery datepicker 年份变化

Posted

技术标签:

【中文标题】Jquery datepicker 年份变化【英文标题】:Jquery datepicker years change 【发布时间】:2011-11-15 09:05:15 【问题描述】:

我正在使用 jquery 的 datepicker 作为字段来设置出生日期,同时显示默认选择器,它提供了每月滚动到日期的选项,听起来很乏味。有没有办法可以直接更改年份,而不是使用月份来依次更改年份。

【问题讨论】:

您使用的是默认的 jQuery UI 日期选择器? 【参考方案1】:

日期选择器上有一个changeYear 属性,您可以将其设置为true

$( ".selector" ).datepicker( changeYear: true );

http://jqueryui.com/datepicker/#dropdown-month-year

这将呈现一个选择列表,您可以从中选择您想要的年份。

【讨论】:

什么是我不想要一个 select,而是一个小的 input ?保留所有样式和功能【参考方案2】:

在您的 DataPicker 参数中插入 changeYear: true

例子:

$(function() 
        $( ".datepicker" ).datepicker(
            changeMonth: true,
            changeYear: true
        );
    );

【讨论】:

【参考方案3】:

设置changeYear: true,如下示例代码所示:

 $("#birth_date").datepicker(
            dateFormat: 'yy-mm-dd',
            changeMonth: true,
            changeYear: true,
            maxDate: '-1D'
        ,
        $.datepicker.regional["fr"]
    );

更多选项请参阅此处:https://jqueryui.com/datepicker/

【讨论】:

【参考方案4】:

changeYear 属性允许您启用一年 dropdown。使用yearRange 属性来控制他们在下拉列表中看到的number of years 也可能会有所帮助,默认情况下它从-10 到+10 年。

$('#date').datepicker(
    changeMonth: true,
    changeYear: true,
    yearRange: "-40:+40"
);

来自原始文档的详细信息:

年份下拉菜单中显示的年份范围:相对于今天的年份(“-nn:+nn”),相对于当前选定的年份(“c-nn:c+nn”),绝对( “nnnn:nnnn”)或这些格式的组合(“nnnn:-nn”)。请注意,此选项仅影响下拉菜单中显示的内容,要限制可以选择的日期,请使用 minDate 和/或 maxDate 选项。

【讨论】:

【参考方案5】:

您可以使用 datepicker 对象中的“changeYear”属性(请参阅:jQuery UI)启用年份下拉菜单。

【讨论】:

以上是关于Jquery datepicker 年份变化的主要内容,如果未能解决你的问题,请参考以下文章

jQuery UI - Datepicker - 隐藏年份

jQuery 日期选择器。我如何从 Jquery datepicker 中获取年份

当用户更改月份时,jquery datepicker 更改年份

jQuery DatePicker:如何将年份数组传递给 yearRange 下拉列表

jQuery DatePicker:如何将年份数组传递给yearRange下拉列表

JQuery UI Datepicker,在下拉菜单中颠倒年份的顺序