Tengo el siguiente código html para aceptar solo una fecha mayor o igual a la fecha actual en javascript de vainilla. Sin embargo, por alguna razón, no parece aceptar el valor minDate en la etiqueta <script> del archivo html.
<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>esto no funciona y no limita la entrada de fecha,
Sin embargo, cuando uso una cadena codificada y dejo todo lo demás igual, como: document.getElementById("Ride_Start_Date").setAttribute('min',"2022-05-31");
esto funciona perfectamente
He intentado mirar muchas respuestas, pero todas parecen funcionar perfectamente con un valor variable para setAttribute, pero la mía no. ¿Qué parece que estoy haciendo mal aquí?
Apreciaría cualquier y toda la ayuda en este
Deberías usar
var month = todayDate.getMonth() //getMonth from 0 to 11 Hoy es 2022-05-31.
Está intentando establecer 2022-04-31 como la fecha mínima.
Esta es la fecha equivocada. por eso no funciona