输入日期 - 预选年份而不设置值?

时间:2021-06-07 13:56:49

标签: html forms datepicker

<input type="date" name="birthday" id="birthdate" required="">

我想预先选择日期选择器的年份(假设是 16 年前),因此用户可能不需要从今天的日期开始,点击回到他们的出生年份。

如果我使用 value="2005-01-01" 日期是预先选择的,但输入也有一个 :valid 值,所以该字段不会以 :invalid 样式显示(因为它是一个必填字段,它与 :invalid 选择器具有不同的样式,如果它为空或语法错误)。所以基本上它不再是必填字段,因为它有一个有效的值,用户不需要输入或更改日期来发送表单。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

您能做的最好的事情是在输入更改时使用 JavaScript 更改年份。像这样:

var chosenYear = 2000;
var datepicker = document.getElementById("birthdate");
datepicker.addEventListener("change", ()=>{
  datepicker.value = chosenYear+datepicker.value.substring(4);
})
Please choose your birthdate. <b>The year will automatically be set to 2000.</b>
<br/><br/>
<input type="date" name="birthday" id="birthdate" required="">