Passer une valeur a une fonction

Résolu
RagaMs
Messages postés
2
Date d'inscription
vendredi 20 avril 2018
Statut
Membre
Dernière intervention
20 avril 2018
- Modifié le 20 avril 2018 à 14:01
RagaMs
Messages postés
2
Date d'inscription
vendredi 20 avril 2018
Statut
Membre
Dernière intervention
20 avril 2018
- 20 avril 2018 à 20:31
Bonjour et merci pour ce forum exceptionnel
Je suis novice dans la programmation JavaScript  et actuellement je suis bloquer, depuis 2 jours que je recherche une solution a mon problème mais je ne trouve rien
Je voudrais envoyer une variable a une fonction:  
  j ai une fonction anonyme "save()" qui récupère une valeur d'un champs input jusqu'à la ça fonctionne, mais je veux utiliser cette valeur 
  dans la fonction "heures()" et la je suis bloquer.  Merci pour votre aide 

 
<!DOCTYPE html>
<html>
<head>
 <meta charset="utf-8">
 <title>Le Titre De La Page</title>
</head>
<body style="background-color: black; ">
 <div style = "border: 1px solid #888; background-color: ; width: 50%; float: right;">
  <form name="form1">
   <input type="number" name="inMinute" id="min" value="">
   <input type="button" name="button" value="Save" onclick="save()">
  </form>
  <h3 style = "text-align: center; color: blue;"></h3>
  <h3 style = "text-align: center; color: green;"></h3>
  <audio id="audioPlayer" src="son.mp4"></audio>
 </div>

 <script type="text/javascript">

  
  
   
   function save()
   {
    testin = document.getElementById("min").value;
    return testin;
   }

   
    

  function heures()
  {
    
   var son = document.querySelector('#audioPlayer');
   var maDatte = document.getElementsByTagName("h3") [0];
   var allarme = document.getElementsByTagName("h3") [1];
   var dat = new Date();
   var heure = dat.getHours();
   if(heure<10){heure = "0"+heure;}
   var minute = dat.getMinutes();
   if(minute<10){minute = "0"+minute;}
   var seconde = dat.getSeconds();
   if(seconde<10){seconde = "0"+seconde;}
   var titre = "Votre navigateur indique "+heure+":"+minute+":"+seconde;
   maDatte.textContent = titre;
   if(minute===testin){allarme.textContent = "Bonjour",son.play();}
    else allarme.textContent = "",son.pause();
   
  }
  setInterval('heures()',1000);
  
  
  

 </script>
</body>
</html>


EDIT : Correction des balises de code pour avoir la coloration syntaxique.

1 réponse

jordane45
Messages postés
35442
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
19 mai 2022
356
20 avril 2018 à 14:03
Bonjour,

Tu as plusieurs possibilités.
Stocker la variable dans un champ input hidden
ou la déclarer en "global" dans ton code.

Prenons le second choix:
var testin = ""; //déclaration "globale" (en dehors de toute fonction)
function save()
   {
    testin = document.getElementById("min").value;
    return testin;
   }

function heures()
  {
   alert(testin); // la variable est bien accessible



0
RagaMs
Messages postés
2
Date d'inscription
vendredi 20 avril 2018
Statut
Membre
Dernière intervention
20 avril 2018

20 avril 2018 à 20:31
Merci pour la repense.
J'ai effectuer les modifications comme expliquer dans le message ça fonction après un parseInt(testin) Merci encore et Vive Codes-Sources

var testin="";

function save()
{
testin = document.getElementById("min").value;
return testin;
}




function heures()
{

testin = parseInt(testin);
0