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

问题描述 投票:4回答:3

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

<input type="month">

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

html angular
3个回答
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">

2
投票

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

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">

2
投票

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

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

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

使用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" />
© www.soinside.com 2019 - 2024. All rights reserved.