IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Afficher les résultats aléatoires sur page html ->innerHTML


Sujet :

JavaScript

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 38
    Par défaut Afficher les résultats aléatoires sur page html ->innerHTML
    Bonjour,

    Je cherche à afficher sur ma page html, les résultats aléatoires de citations formées de morceaux de phrases, on doit choisir un nombre de citations à générer et les citations apparaissent.
    J'arrive à afficher une citation mais cela ne fonctionne pas pour plusieurs..
    voici une partie de mon code mon js:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
        randomDebut = citationDebut[Math.floor(Math.random() * citationDebut.length)]; 
        randomMilieu = citationMilieu[Math.floor(Math.random() * citationMilieu.length)]; 
        randomFin = citationFin[Math.floor(Math.random() * citationFin.length)]; 
        var resultat = randomDebut + " "+ randomMilieu + ", "+ randomFin +"\!"; 
       document.getElementById("content" ).innerHTML = resultat; 
      function demarrer(){ 
        var choix = Number(prompt("Tapez 1 pour choisir le générateur n°1 ou tapez 2 pour le générateur n°2" )); 
        var nombre = Number(prompt("Combien de citations souhaitez-vous générer ?tapez entre 1 et 5" )); 
     
        for(i = 0; i < nombre; i++){ 
     	if(i<5){ 
          genererCitation(choix); 
     	}
    partie HTML
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <body> 
     <div id="content"></div> 
             <p id="submission"><input type="submit" class="submit" value="Lancer" onclick="demarrer();"></input></p> 
        </body>

    J'ai besoin de vos lumières, SVP MERCI BEAUCOUP !!

  2. #2
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Billets dans le blog
    125
    Par défaut


    Un exemple vite fait (je manque de temps ce matin), donc perfectible. Les fonctions commençant par la lettre "k" sont dans : Fichier dvjhUtilities-1.5.1.js

    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    <!DOCTYPE html>
    <html lang="fr" dir="ltr">
    <head>
    	<!-- cache-control avec max-age=60 pour le développement uniquement -->
      <meta http-equiv="cache-control" content="public, max-age=60">
      <meta charset="utf-8">
      <meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
      <meta name="author" content="Daniel Hagnoul">
    	<title>Test</title>
      <style>
                    *,
                    *:after,
                    *:before {
                            box-sizing: border-box;
                    }
                    
                    /* CSS du test */
     
                    
                    /* Fin CSS du test */
     
      </style>
      <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.20.1/moment.min.js"></script>
      <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.20.1/locale/fr.js"></script>
      <script src="http://danielhagnoul.developpez.com/lib/dvjh/dvjhUtilities-1.5.1.js"></script>
    	<script>
        'use strict';
     
                    document.addEventListener( "DOMContentLoaded", ev => {
                            // le DOM est construit, la page web n'est pas visible
                            moment.locale( "fr" );
                            klog( `DOM ready   : ${ new kDvjhDate() }` );
                            
                            // code du test
                    
                    
                            // fin code du test
                            
                    }, false );
        
        window.addEventListener( "load", ev => { 
                            // le DOM est construit et la page web est visible
                            klog( `Window load : ${ new kDvjhDate() }` );
                            
          // code du test
                            
                            const 
                                    arCitationDebut = [ "Pierre", "Paul", "Jacques", "François", "Joseph", "Marie" ],
                                    arCitationMilieu = [ "a un chat", "a un chien", "a un poisson rouge", "a une tortue", "a un vélo", "a un serpent" ],
                                    arCitationFin = [ "il est en bonne santé", "il est malade", "il est mort", "il est décédé", "il est crevé", "il a la pêche" ],
                                    elemContent = k$( "#content" ),
                                    elemBtnLancer = k$( "#btnLancer" ),
                                    genererCitation = ( n ) => {
                                            let
                                                    randomDebut = arCitationDebut[ kIntRandom( 0, 5 ) ],
                                                    randomMilieu = arCitationMilieu[ kIntRandom( 0, 5 ) ],
                                                    randomFin = arCitationFin[ kIntRandom( 0, 5 ) ],
                                                    resultat = randomDebut + " " + randomMilieu + ", " + randomFin + " !",
                                                    elemChild = document.createElement( "p" );
                                            
                                            elemChild.innerHTML = resultat;
                                                    
                                            elemContent.appendChild( elemChild );
                                    };
                            
                            elemBtnLancer.addEventListener( "click", ev => { 
                                    let
                                            choix = 1,
                                            nombre = Number( prompt( "Combien de citations souhaitez-vous générer ? Tapez un nombre entre 1 et 5." ) ); 
                                    
                                    nombre = ( nombre < 6 ) ? ( nombre ) : ( 1 );
                                    
                                    for( let i = 0; i < nombre; i++ ){ 
                                            genererCitation( choix ); 
                                    }
                            }, false );
     
                            // fin code du test
                                                    
          kIDUnique();
        }, false );
      </script>
    </head>
    <body>
    	<main>
     
    		<button id="btnLancer">Lancer</button>
    		<div id="content"></div>
     
    	</main>
    </body>
    </html>

    Blog

    Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
    (Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 38
    Par défaut
    Merci infiniment de prendre du temps. !!😊
    Je débute, donc ce que tu proposes est un peu compliqué pour moi mais je vais essayer de comprendre !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Afficher les résultats de tests en HTML avec PHPUnit
    Par Yoteco dans le forum Contribuez / Téléchargez Sources et Outils
    Réponses: 0
    Dernier message: 15/02/2011, 19h42
  2. Afficher une vidéo aléatoire dans page HTML
    Par maxmarie dans le forum Langage
    Réponses: 1
    Dernier message: 25/06/2010, 16h48
  3. [MySQL] Afficher les résultats de requête sur pages 1,2,3
    Par karenv5 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 19/01/2008, 17h31
  4. Ne pas afficher les balises d'une page html
    Par abir84 dans le forum Ruby
    Réponses: 3
    Dernier message: 20/10/2007, 10h53
  5. [SQL] Afficher les résultats d'une requête sur plusieurs pages
    Par mealtone dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 07/09/2006, 13h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo