我正在处理一个显示日期输入的Backform,用户必须在其中输入生日。重点关注此输入时,将显示一个日期选择器。
我们的用户(和我)并没有年轻,要从当前日期滚动到我们实际的出生年份真的很繁琐。
这是表格的简化版本:
id_person name answer answer_code party question
1 1 David Yes 100 Green 1
2 2 Manuela No 0 Green 1
3 3 Pascal Rather yes 75 Red 1
4 4 Vanessa Rather no 25 Red 1
5 5 Max Rather no 25 Blue 1
6 6 Carine Rather yes 75 Orange 1
7 7 Michael yes 100 Yellow 1
8 8 Corina yes 100 Darkgreen 1
9 9 Dylan yes 100 Darkgreen 1
10 10 Agnes no 0 Blue 1
我已经设法通过添加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"
},
});
属性为输入设置默认日期,但这并不是我想要实现的。
是否可以通过在标记中添加属性来设置过去的默认年份?
答案 0 :(得分:0)
由于日期选择器实际上是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'));
第一行将阻止用户选择指定日期之后的日期。 第二行将选择最后一个可选日期。