Mise à jour input type date en javascript
FerméMisterlolo57 Messages postés 12 Date d'inscription jeudi 29 décembre 2022 Statut Membre Dernière intervention 30 décembre 2022 - 30 déc. 2022 à 16:46
- Input type date javascript
- Telecharger javascript - Télécharger - Langages
- Whatsapp date incorrecte ✓ - Forum Mobile
- Input signal out of range - Forum Ecran
- Publipostage date inversée ✓ - Forum Word
1 réponse
30 déc. 2022 à 16:46
Pour mettre à jour le champ de type "date" à partir du champ de type "number" et du champ de type "date", tu peux utiliser la méthode "setMonth" de l'objet Date en JavaScript.
Comment faire :
-
Dans la fonction "calculProchaineDate", récupére la valeur du champ de type "number" et du champ de type "date" en utilisant les méthodes "getElementById" et "value".
-
Crée un objet "Date" à partir de la valeur du champ de type "date" en utilisant la méthode "new Date()".
-
Ajoute le nombre de mois à la date en utilisant la méthode "setMonth" de l'objet Date. Cette méthode ajoute le nombre de mois spécifié à la date actuelle et renvoie le timestamp (nombre de millisecondes depuis le 1er janvier 1970) de la nouvelle date.
-
Pour afficher la date au format "yyyy-mm-dd", tu peux utiliser la méthode "toISOString" de l'objet Date pour obtenir une chaîne de caractères au format ISO. tu peux ensuite extraire les parties de la chaîne qui correspondent à l'année, au mois et au jour et les utiliser pour mettre à jour le champ de type "date".
Exemple :
function calculProchaineDate(periodeId, dateDernierEntretienId, dateProchainEntretienId){ // Récupération de la valeur du champ de type "number" et du champ de type "date" var nbrMois = document.getElementById(periodeId).value; var dateDernierEntretien = new Date(document.getElementById(dateDernierEntretienId).value); // Ajout du nombre de mois à la date var timestampProchaineDate = dateDernierEntretien.setMonth(dateDernierEntretien.getMonth() + nbrMois); // Création de l'objet "Date" à partir du timestamp var prochaineDate = new Date(timestampProchaineDate); // Conversion de la date au format "yyyy-mm-dd" var dateISO = prochaineDate.toISOString(); var annee = dateISO.substring(0, 4); var mois = dateISO.substring(5, 7); var jour = dateISO.substring(8, 10); // Mise à jour du champ de type "date" document.getElementById(dateProchainEntretienId).value = annee + "-" + mois + "-" + jour; }