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 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 344
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
Rejoignez-nous