繁体   English   中英

日期输入类型的 min 属性不接受 javascript 中的变量值

[英]min Attribute for date input type not accepting variable value in javascript

我有以下 html 代码只接受大于或等于 vanilla javascript 中当前日期的日期。 但是由于某种原因,它似乎不接受 html 文件的<script>标记中的minDate值。

<body>
<form>
    <td><label for="Ride_Start_Date">Ride Start Date</label></td>
    <td><input type = "date" id="Ride_Start_Date" name="Ride_Start_Date"></td>
    <td><button type="submit" class="submit">Submit Query</button></td>
</form>
<script>
var todayDate = new Date();
var month = todayDate.getMonth(); 
var year = todayDate.getUTCFullYear() - 0; 
var tdate = todayDate.getDate(); 
if(month < 10){
    month = "0" + month 
}
if(tdate < 10){
    tdate = "0" + tdate;
}
var minDate = year + "-" + month + "-" + tdate;
document.getElementById("Ride_Start_Date").setAttribute('min',minDate);
console.log(maxDate);
alert(" minDate="+minDate);
</script>
</body>

这不起作用并且不会限制日期输入,

但是,当我使用硬编码字符串而其他所有内容保持不变时,例如: document.getElementById("Ride_Start_Date").setAttribute('min',"2022-05-31");

这完美地工作。

我试过查看很多答案,但它们似乎都可以完美地使用 setAttribute 的变量值,但我的没有。 我在这里似乎做错了什么?

将不胜感激在这方面的任何和所有帮助

你应该使用

var month = todayDate.getMonth() //getMonth from 0 to 11

今天是 2022-05-31。
您正在尝试将 2022-04-31 设置为最短日期。
这是错误的日期。 这就是为什么它不起作用

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM