【发布时间】:2019-07-24 12:00:26
【问题描述】:
我正在尝试将表示日期的格式良好的字符串变量 (yyyy-mm-dd) 分配给 <input type="date" /> 的值。当值是字符串文字时,它可以工作,但是当它来自变量或常量时,它就不起作用。您可以检查以下 html 代码和呈现的 html 页面。
<form>
<p>Litteral Assignement: <input name="literalDate" type="date" /></p>
<p>Variable Assignement: <input name="variableDate" type="date" /></p>
</form>
<script>
var literalDateControl = document.querySelector('input[name="literalDate"]');
literalDateControl.value = "2019-07-24";
var today = new Date();
const todayValue = today.getFullYear() + '-' + (today.getMonth() + 1) + '-' + today.getDate();
var variableDateControl = document.querySelector('input[name="variableDate"]');
variableDateControl.value = todayValue;
</script>
关于如何解决这个问题有什么想法或建议吗?
【问题讨论】:
-
格式为 yyyy-mm-dd。您的 (today.getMonth() + 1) 将导致 7 ,您需要添加 07 。
-
请注意,
<input>标签不使用也不需要结束斜杠,并且在 HTML 中从来没有。
标签: javascript html date input