使用Eonasdan bootstrap-datetimepicker,需要预设年份到65年前

时间:2015-12-10 16:56:17

标签: bootstrap-datetimepicker

我为医疗保险患者提供医疗服务专业人员的申请,通常在他们的60到100岁之间,我们使用Eonasdan bootstrap-datetimepicker允许他们选择这样的生日:

JavaScript的:

$('.birthDateTimePicker').datetimepicker({
    format: 'M/D/YYYY',
    maxDate: (new Date()),// used to disallow future dates
    showClose: true,
    viewMode: 'years'
});

HTML:

<div class="input-group birthDateTimePicker">
    <input id="birthDt" name="birthDt" type="text" placeholder="Birth Date"
            class="form-control col-sm-3 col-md-3 col-lg-2" required />
    <span class="input-group-addon">
        <span class="glyphicon glyphicon-calendar"></span>
    </span>
</div>

这会生成一个最初没有选择日期的显示,但在输入框中显示:Birth date。问题是,它默认为2015年,因此由于大多数患者的年龄较大,选择年份非常缓慢。我尝试像这样设置defaultDate:

$('.birthDateTimePicker').datetimepicker({
    defaultDate: moment().subtract(68, 'y'),
    format: 'M/D/YYYY',
    maxDate: (new Date()),// used to disallow future dates
    showClose: true,
    viewMode: 'years'
});

但是现在,它不是在输入框中显示Birth date,而是在输入框中显示实际日期,如12/10/1947。我想预先设定起始年份,但不要预先选择整个日期。生日对于他们收到的医疗非常重要,并且与他们的姓名一起用于身份识别,我想要的最后一件事就是让某人忘记进入生日,并且因为它已经预先选择了特定的日期,他们得到了错误的生日。那么,如何让医疗专业人员轻松选择年份,但不能随意输入错误的日期?

1 个答案:

答案 0 :(得分:2)

如果您使用的是最新版本,则可以设置选项:

viewDate: moment().subtract(68, 'y'),
format: 'M/D/YYYY',
maxDate: moment(),
showClose: true,
viewMode: 'years'

viewDate是一个选项,会导致选择器在指定日期打开。