主干.js日期输入 - 在<input /> 标记中设置日期选取器默认年份



我正在处理一个显示日期输入的反向表单,用户必须在其中输入其出生日期。将焦点分配给此输入时,将显示日期选取器。

我们的用户(和我(并没有变得更年轻,从当前日期滚动到我们的实际出生年份变得非常乏味。

这是表单的简化版本:

this.form = new Backform.Form({
el:$('.Host-form'),
model: new HostModel({
birthdate: '',
}, {
birthdate: {
type: "date",
mandatory: true,
readonly: false
}
}),
fields: {
"name": "birthdate",
"label": "Birthdate *",
"control": "input",
"placeholder": "Birthdate *",
"disabled": false,
"required": true,
"value": null,
"options": [],
"extraClasses": [],
"type": "date"
},
});

我已经设法通过添加属性为输入设置默认日期value但这不是我想要实现的。

有没有办法通过在标签中添加属性来设置过去的默认年份?

由于日期选择器实际上是一个html<input type="date" />,我设法用这个解决了这个问题:

var m = moment().subtract(18, 'years');
$('[name="birthdate"]').attr('max', m.format('YYYY-MM-DD'));
$('[name="birthdate"]').attr('value', m.format('YYYY-MM-DD'));

第一行将阻止用户选择指定日期之后的日期。 第二行将选择最后一个可选日期。

最新更新