Quiero insertar una fecha actual en una entrada en forma con javascript, pero no funciona, aquí están mis códigos:
document.addEventListener("DOMContentLoaded", function() { document.getElementById("registrationday").value = getDay() function getDay() { 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(); today = "\"" + yyyy + '-' + mm + '-' + dd + "\""; return today } }) <input type="date" id="registrationday" name="registrationday" disabled>Elimina las comillas:
document.addEventListener("DOMContentLoaded", function() { document.getElementById("registrationday").value = getDay() function getDay() { 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(); today = yyyy + '-' + mm + '-' + dd; return today } }) <input type="date" id="registrationday" name="registrationday" disabled> Sin embargo, una mejor solución es simplemente asignar la fecha actual a la propiedad valueAsDate de la entrada (sugerido por @Always Helping ):
document.addEventListener("DOMContentLoaded", function() { document.getElementById("registrationday").valueAsDate = getDay() function getDay() { return new Date() } }) <input type="date" id="registrationday" name="registrationday" disabled>var currentDate= new Date(); var day = ("0" + currentDate.getDate()).slice(-2); var month = ("0" + (currentDate.getMonth() + 1)).slice(-2); var today = currentDate.getFullYear()+"-"+(month)+"-"+(day) ; document.getElementById("datepicker").value = today;Resuelto con este JS:
document.addEventListener("DOMContentLoaded", function(){ var date = new Date (); var day = datum.getDate(), month = datum.getMonth() + 1, year = datum.getFullYear(); var today = day + "-" + month + "-" + day ; document.getElementById('registrationday').value = today; });HTML:
<input type="date" id="registrationday" name="registrationday" disabled>