如何在输入元素中设置默认月份?

时间:2018-11-07 11:01:12

标签: html angular

说我有一个像这样的输入元素:

<input type="month">

如何将此输入元素的默认值设置为当前月?

3 个答案:

答案 0 :(得分:4)

您可以使用一些javascript:

const monthControl = document.querySelector('input[type="month"]');
const date= new Date()
const month=("0" + (date.getMonth() + 1)).slice(-2)
const year=date.getFullYear()
monthControl.value = `${year}-${month}`;
<input type="month">

答案 1 :(得分:2)

要设置月份输入(input[type="month"])的值,请仅在值(yyyy-MM)中使用年份和月份,例如:

<input type="month" id="txtMonth" value="2018-11" />

会将月份显示为Novermber(在支持月份输入类型的浏览器中,支持不完整)。

要使用javascript填充字段,可以执行以下操作:

var txtMonth = document.getElementById('txtMonth');
var date = new Date();
var month = "0" + (date.getMonth() + 1);
txtMonth.value = (date.getFullYear() + "-" + (month.slice(-2)));
<input type="month" id="txtMonth" value="2018-11" />

答案 2 :(得分:2)

您必须构造新的Date并查询您的输入,然后执行以下操作:

let date = new Date();
let month = `${date.getMonth() + 1}`.padStart(0, 2);
let year = date.getFullYear();
document.getElementById("month").value = `${year}-${month}`
<input id="month" type="month" value="2012-3-23">