Partage
  • Partager sur Facebook
  • Partager sur Twitter

Comment appeler une fonction ?

Sujet résolu
    7 décembre 2019 à 16:17:12

    Bonjour ma question est toute bête mais je n'arrive pas a appeler une fonction dans ma page html depuis un fichier js externe.

    tout d'abord je charge mon fichier juste avant la balise body fermante :

    <script src="javascript.js" type="text/javascript"></script>

    ensuite j'appel ma fonction localisé dans le fichier javascript.js :

    				<p><script type="text/javascript">date_mod();</script></p>

    et dans mon fichier javascript.js j'ai la fonction suivante :

    function date_mod() {
    	var dateModif = new Date(document.lastModified);
    	var jour = dateModif.getDate();
    	if (jour<10) {jour = '0'+jour;}
    	var mois = dateModif.getMonth()+1;
    	if (mois<10) {mois = '0'+mois;}
    	var annee = dateModif.getFullYear();
    	var heures = dateModif.getHours();
    	if (heures<10) {heures='0'+heures;}
    	var minutes = dateModif.getMinutes();
    	if (minutes<10) {minutes='0'+minutes;}
    	document.write("le "+jour+"/"+mois+"/"+annee+" à "+heures+":"+minutes);
    }

    Si je met directement le code de ma fonction dans mon fichier html j'obtient bien le résultat voulu. Si je fait :

    				<p><script type="text/javascript">
    					var dateModif = new Date(document.lastModified);
    					var jour = dateModif.getDate();
    					if (jour<10) {jour = '0'+jour;}
    					var mois = dateModif.getMonth()+1;
    					if (mois<10) {mois = '0'+mois;}
    					var annee = dateModif.getFullYear();
    					var heures = dateModif.getHours();
    					if (heures<10) {heures='0'+heures;}
    					var minutes = dateModif.getMinutes();
    					if (minutes<10) {minutes='0'+minutes;}
    					document.write("le "+jour+"/"+mois+"/"+annee+" à "+heures+":"+minutes);
    				</script></p>

    Donc mon problème vient de l'appel de la fonction. Je ne sais pas comment faire.

    • Partager sur Facebook
    • Partager sur Twitter

    "Etre vrai, peu le peuvent."
    Friedrich Nietzsche

      7 décembre 2019 à 17:07:24

      Salut,

      tu peux le faire depuis ton fichier js :

      //dans le fichier js :
      window.addEventListener("DOMContentLoaded", (event) => {
          console.log("DOM entièrement chargé et analysé");
          date_mod();
      });
      
      //dans date_mod, tu peux utiliser "innerHTML" plutôt que "write" :
      var a = document.getElementById("idDeLaDiv");
      a.innerHTML = "le "+jour+"/"+mois+"/"+annee+" à "+heures+":"+minutes;
      //ou += pour rajouter du contenu au contenu déjà existant :
      a.innerHTML += "le "+jour+"/"+mois+"/"+annee+" à "+heures+":"+minutes;



      • Partager sur Facebook
      • Partager sur Twitter
        7 décembre 2019 à 17:24:45

        Ca marche.

        Merci beaucoup.

        • Partager sur Facebook
        • Partager sur Twitter

        "Etre vrai, peu le peuvent."
        Friedrich Nietzsche

          7 décembre 2019 à 22:11:43

          Bonjour

          La balise <p> intervient sur des paragraphe donc text, hors ta fonction ne revoit pas du text .  A mon avis, fait retourner  document.write 

          <html> <head> </head>
                  <script type="text/javascript" src="Js.js"></script>
          <body>
          
          <p> <script type="text/javascript">date_mod();</script> </p>
          
          </body> </html>
          

          Voici Js.js  

          function date_mod() 
          {
          
              var dateModif = new Date(document.lastModified);
              var jour = dateModif.getDate();
              if (jour<10) {jour = '0'+jour;}
              var mois = dateModif.getMonth()+1;
              if (mois<10) {mois = '0'+mois;}
              var annee = dateModif.getFullYear();
              var heures = dateModif.getHours();
              if (heures<10) {heures='0'+heures;}
              var minutes = dateModif.getMinutes();
              if (minutes<10) {minutes='0'+minutes;}
              var msg= "le "+jour+"/"+mois+"/"+annee+" à "+heures+":"+minutes;
                  alert(msg);
              return(document.write(msg));
              return("le "+jour+"/"+mois+"/"+annee+" à "+heures+":"+minutes);
          }
          




          • Partager sur Facebook
          • Partager sur Twitter

          Comment appeler une fonction ?

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown