如何使用JavaScript将当前日期插入type为date的input输入框
问题原因
- 核心错误是你拼接日期时额外添加了前后双引号,
type="date"类型的 input 要求 value 必须是纯YYYY-MM-DD格式的字符串,带引号的字符串不符合格式规范,浏览器无法识别所以赋值失效。 - 另外自定义函数名
getDay是JS内置Date对象的原生方法名,容易引发命名冲突,建议更换为自定义命名避免潜在问题。 - 补充说明:input的
disabled属性仅限制用户手动修改内容,不影响JS代码赋值操作,无需调整。
修复后代码
JavaScript代码
document.addEventListener("DOMContentLoaded", function() { document.getElementById("registrationday").value = getFormatDay() function getFormatDay() { var today = new Date(); var dd = String(today.getDate()).padStart(2, '0'); var mm = String(today.getMonth() + 1).padStart(2, '0'); var yyyy = today.getFullYear(); return yyyy + '-' + mm + '-' + dd; } })
HTML代码(无需修改)
<input type="date" id="registrationday" name="registrationday" disabled>
内容的提问来源于stack exchange,提问作者Batman
相关产品推荐
相关产品推荐

