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 :

Formulaire tirage aléatoire JS


Sujet :

JavaScript

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2016
    Messages : 4
    Points : 4
    Points
    4
    Par défaut Formulaire tirage aléatoire JS
    Bonjour,

    Veuillez m'excuser par avance si je ne suis pas dans la bonne discussion, je suis encore novice sur le forum. Et même novice en conception web...
    En effet n'étant pas spécialisé en codage, je rencontre le problème suivant:

    Je souhaite créer un formulaire de 4 tirages aléatoire sur la même page. Quelque chose de simple: 4 boutons / 4 zones de texte affichant le tirage.
    Voici mon code:

    Code : 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
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    <body>
     
    <h1>TITRE</h1>
     
    <div id="div1">
    <h2>
    <p>SOUS TITRE 1</p>
    </h2>
     
       <input type="button" value="ALEATOIRE" onClick="populate (tt);">
       <input type="text" size="60" value="" id="tt" />
     
            <script type="text/javascript" charset="utf-8">
                function populate (tt) {
     
                 var obj=document.getElementById("tt")
     
                     aleatoire=Math.floor(Math.random()*7);
                     switch(aleatoire){
                     case 0:obj.value="1";break;
                     case 1:obj.value="2";break;
                     case 2:obj.value="3";break;
                     case 3:obj.value="4";break;
                     case 4:obj.value="5";break;
                     case 5:obj.value="6";break;
                     case 6:obj.value="7";break;
     
                                   }
     
                                   }
            </script>
     
     
    </div>
     
     
     
    <div id="div2">
    <h2>
    <p>SOUS TITRE 2</p>
    </h2>
     
       <input type="button" value="ALEATOIRE" onClick="populate(tt1);">
       <input type="text" size="60" value="" id="tt1" />
     
            <script type="text/javascript" charset="utf-8">
                function populate (tt1) {
     
     
                  var obj=document.getElementById("tt1")
     
     
                     aleatoire=Math.floor(Math.random()*7);
                     switch(aleatoire){
                     case 0:obj.value="8";break;
                     case 1:obj.value="9";break;
                     case 2:obj.value="10";break;
                     case 3:obj.value="11";break;
                     case 4:obj.value="12";break;
                     case 5:obj.value="13";break;
                     case 6:obj.value="14";break;
     
                                 }
     
                                   }
            </script>
    </div>
     
     
    <div id="div3">
     
    <h2>
    <p>SOUS TITRE 3</p>
    <h2>
     
       <input type="button" value="ALEATOIRE" onClick="populate(tt2);">
       <input type="text" size="60" value="" id="tt2"/>
     
            <script type="text/javascript" charset="utf-8">
                function populate (tt2) {
     
     
                  var obj=document.getElementById("tt2")
     
     
                     aleatoire=Math.floor(Math.random()*7);
                     switch(aleatoire){
                     case 0:obj.value="15";break;
                     case 1:obj.value="16";break;
                     case 2:obj.value="17";break;
                     case 3:obj.value="18";break;
                     case 4:obj.value="19";break;
                     case 5:obj.value="20";break;
                     case 6:obj.value="21";break;
     
                                      } 
                                   }
            </script>
     
    </div>
     
     
     
    <div id="div4">
    <h2>
    <p>SOUS TITRE 4</p>
    </h2>
       <input type="button" value="ALEATOIRE" onClick="populate(tt3);">
       <input type="text" size="60" value="" id="tt3" >
     
            <script type="text/javascript" charset="utf-8">
                function populate (tt3) {
     
     
                  var obj=document.getElementById("tt3")
     
                     aleatoire=Math.floor(Math.random()*7);
                     switch(aleatoire){
                     case 0:obj.value="22";break;
                     case 1:obj.value="23";break;
                     case 2:obj.value="24";break;
                     case 3:obj.value="25";break;
                     case 4:obj.value="26";break;
                     case 5:obj.value="27";break;
                     case 6:obj.value="28";break;
     
                                      }
                                   }
           </script>
    </div>
     
    </body>
    </html>

    Problème: lorsque je clique sur n'importe quel bouton, le formulaire prend en compte que la dernière partie : <div 4>. C'est peut être très simple à résoudre et c'est possible qu'il y ai de grossières erreurs dans mon code, encore une fois je suis novice....

    Merci par avance pour votre aide

    Alex

  2. #2
    Modérateur
    Avatar de Vil'Coyote
    Homme Profil pro
    Développeur adélia & Web
    Inscrit en
    Février 2008
    Messages
    4 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur adélia & Web
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 4 583
    Points : 7 503
    Points
    7 503
    Par défaut
    si tu utilises 4 fois la même fonction t'attend pas à des miracles.

    dans le <head></head> qui en passant n'existe pas ....
    Code : 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
     
            <script type="text/javascript" charset="utf-8">
                function populate (variable) 
    			{
    				var obj=document.getElementById(variable)
     
                     aleatoire=Math.floor(Math.random()*7);
                     switch(aleatoire)
    				{
                     case 0:obj.value="1";break;
                     case 1:obj.value="2";break;
                     case 2:obj.value="3";break;
                     case 3:obj.value="4";break;
                     case 4:obj.value="5";break;
                     case 5:obj.value="6";break;
                     case 6:obj.value="7";break;
                    }
     
                }
            </script>
    et pour chacun des appels tu remplace par le nom de l'id concerné
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    onClick="populate('tt');"

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2016
    Messages : 4
    Points : 4
    Points
    4
    Par défaut réponse Vil'Coyote
    Bonjour,

    Merci pour votre retour.

    je n'ai pas copié le <head></head> puisque à mon sens il n'a aucun rapport avec mon problème...

    Concernant votre explication, j'ai bien noté le changement "(variable)" dans la formule, cependant qu'entendez-vous par remplacer par le nom de l'id concerné ?
    Si tous les <input type="text"> ont un id différent, ou dois-je remplacer les id lors des différents appels ?

    Merci

  4. #4
    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
    Points : 22 933
    Points
    22 933
    Billets dans le blog
    125
    Par défaut
    Il y a 4 fonctions portant le même nom : "populate" !

Discussions similaires

  1. Réponses: 0
    Dernier message: 03/04/2008, 09h58
  2. Réponses: 4
    Dernier message: 29/11/2007, 13h09
  3. problème déplacement entre formulaire
    Par estancha dans le forum IHM
    Réponses: 6
    Dernier message: 07/10/2004, 15h22
  4. [Débutant] Problème servlet simple
    Par davycrocket dans le forum Servlets/JSP
    Réponses: 7
    Dernier message: 30/06/2004, 09h24
  5. []Problème avec les formulaires Outlook
    Par davidinfo dans le forum Outlook
    Réponses: 6
    Dernier message: 05/12/2002, 09h59

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