Besoin d'aide Javascript
Bonjour,
J'ai besoin de votre aide pour résoudre un problème JavaScript dans le cadre d'un projet scolaire.
Je souhaite créer un outil en HTML et JavaScript qui calcule les heures et les minutes restantes à l'heure actuelle. Cela me permettra de connaître l'heure future.
Voici le code que j'ai préparé :
HTML:
<h1>Time From Now</h1> <label>Hours</label> <input type="number" id="hours" value="0" min="0"> <label>Minutes</label> <input type="number" id="minutes" value="0" min="0"> <button onclick="calculateTime()">Calculate Future Time</button> <div id="result"></div>
JavaScript:
function calculateTime() {
var hours = document.getElementById("hours").value;
var minutes = document.getElementById("minutes").value;
console.log(hours+", "+minutes);
let currentTime = new Date();
currentTime.setHours(currentTime.getHours() + hours);
currentTime.setMinutes(currentTime.getMinutes() + minutes);
let futureTime = currentTime.toLocaleTimeString([], {
hour: "numeric",
minute: "2-digit"
});
document.getElementById("result").value = "Future Time: " + futureTime;
}
Lorsque j'exécute ce code, les valeurs des heures et des minutes ne sont pas récupérées. La console reste vide.
Quel pourrait être le problème ? Merci de votre aide.
3 réponses
-
Bonjour,
Je n'arrive pas à reproduire le problème, chez moi les valeurs s'affichent bien dans la console.

-
-
@JeenaHarry
Le div#result ne possède pas d'attribut value, tu peux utiliser la propriété innerHTML à la place de value pour afficher le résultat :
document.getElementById("result").innerHTML = "Future Time: " + futureTime; -
@jjs
Ah, je vois. Les petits détails sont très importants en programmation.
-
-
Je souhaite ajouter des fonctionnalités avancées à mon outil. Pourriez-vous m'aider ?
Voici ce que j'aimerais ajouter :
1. Un compteur affichant l'heure actuelle en temps réel.
2. La conversion entre les formats d'heure de 12 et de 24 heures.
Voici la référence : https://time-calculator.net/hours-from-now.html
Merci d'avance pour votre aide.
-
Un exemple pour afficher l'heure actuelle en temps réel :
www.w3schools.com/js/tryit.asp?filename=tryjs_timers_interval
Pour les formats 12h ou 24h, tu peux utiliser l'option "hour12" (true ou false) dans le 2ème paramètre de la méthode toLocaleTimeString() en plus des options "hour" et "minute" que tu utilises déjà.
-
-
Je souhaite afficher l'heure actuelle dans les champs de saisie.
1er champ: Heure
2e champ: Minutes
3e champ: Secondes
Comment puis-je afficher ces trois valeurs dans des champs de saisie différents ?
-
Tes questions sont très bien formulées, mais à un moment il faut que tu apprennes à chercher les réponses là où elles se trouvent, ça fait partie de la méthodo !
Voici un indice :
https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Global_Objects/Date/getMinutes
-