【问题标题】:Increase range of date options in jquery UI datepicker在 jquery UI datepicker 中增加日期选项的范围
【发布时间】:2015-06-10 22:36:13
【问题描述】:

我正在使用 jquery 的日期选择器让用户选择他们的出生日期。我将默认设置为 01/01/1980,以便更容易选择您的出生日期(我们的限制是您的年龄 > 18 岁。

我将 minDate 设置为从今天起过去 100 年。当我切换日期选择器时,最小日期似乎是 1970。如果我选​​择它,关闭日期选择器,然后再次打开它,我可以再往回走(例如选择 1960)。我想允许用户选择 1970 年之前的日期,而不必这样做。

代码:

$(function() {
  $( "#id_date_of_birth" ).datepicker({
    changeMonth: true,
    changeYear: true,
    maxDate: "-18Y",
    minDate: "-100Y",
    defaultDate: '01/01/1980'
   });
 });

【问题讨论】:

  • 我最终删除了这个并使用了 3 个单独的字段来表示月、日、年。更容易选择 DOB 和更少的页面加载(移除 jquery ui 依赖):ux.stackexchange.com/questions/49741/…

标签: javascript jquery jquery-ui datepicker


【解决方案1】:

看起来范围上限恰好是大约 18 年的拆分。
这可能与您的maxDate有关

尝试省略 maxDate 或增加它以查看在第一次打开下拉菜单时是否仍将上限设置为 1970。

如果可行,您可以使用 defaultDatemaxDate 来获得所需的范围。

来自文档:

最大日期

最大可选日期。当设置为 null 时,没有最大值。 支持多种类型:

日期:包含最大日期的日期对象。

数字:从今天开始的天数。例如,2 代表从今天起两天,-1 代表昨天。

String:由 dateFormat 选项定义的格式的字符串,或相对日期。相对日期必须包含值和周期对;有效期间是“y”代表年,“m”代表月,“w”代表周,“d”代表天。例如,“+1m +7d”表示从今天起 1 个月零 7 天。

http://api.jqueryui.com/datepicker/#option-maxDate

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多