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 :

Récupération de la valeur cochée de boutons radio


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Récupération de la valeur cochée de boutons radio
    Bonjour, j'essaie de faire un QCM malgré mes connaissances très minimes. Quasiment tout est fini, cependant quand je mets une fausse réponse (que j'ai défini par 0 avec ma variable q1) ca me met qu'elle est bonne (donc qu'elle est en fait à 1). Je ne sais pas du tout où est mon erreur, le code me semble bon. Peut-être est-ce un problème dans les boutons de sélection de la réponse ou dans ma fonction ?

    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
    <html>
     <head>
      <title>Quiz</title>
     </head>
     <header>
     
      <script>
      function Question1() {
             if(q1=1)
    alert ('Bravo')
    else
    alert('Perdu !');
    }
      </script>
     </header>
     <body bgcolor=#46aeff>
      <font face="verdana">
       <center> Bienvenue sur mon quiz ! Répondez bon au questions et peut-être gagnerez vous un prix !</center>
     
        <b>Combien fait 5+5 ?<br></b>
     
     
        <input type="radio" name="q1" value="0">55
        <input type="radio" name="q1" value="0">25
        <input type="radio" name="q1" value="1">10<br>
        <input type="button" value=" Tu as fini le quiz ?" onclick="Question1();">
     
     
      </body>
    </html>

    Si quelqu'un connaitrait la réponse, ca me ferait plaisir
    Dernière modification par NoSmoking ; 11/01/2015 à 15h46. Motif: Merci d'utiliser les balises[CODE][/CODE] bouton # de l'éditeur + suppression problème dans titre

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 209
    Par défaut
    Bonjour,
    if(q1=1) est une affectation pas une comparaison. il faut utiliser == ou === pour comparer 2 éléments.

  3. #3
    Invité
    Invité(e)
    Par défaut
    J'ai essayé avec == tout comme avec ===, aucun changement

    EDIT : Ca casse le code, je n'ai même plus d'alerte quand je clique sur mon bouton pour vérifier la réponse.

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 209
    Par défaut
    Tout ceci est normal, attendu que la variable n'est pas définie.

    Dans ton premier code la varaible q1 déclarée sans mot clé var était considérée comme une nouvelle variable puisque tu lui affectais une valeur mais ce n'est plus le cas maintenant.

    Il te faut récupérer les radio pour tester la valeur qui est associée à celui qui est coché.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var oRadio = document.getElementsByName('q1');

  5. #5
    Invité
    Invité(e)
    Par défaut
    Je ne vais pas continuer à citer tous les problèmes pour pas déranger, mais ca ne veut toujours pas fonctionner...
    J'ai pourtant placé le code que tu m'as donné dans la fonction Question1, mais ca marche pas :/

  6. #6
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 209
    Par défaut
    J'ai pourtant placé le code que tu m'as donné dans la fonction Question1, mais ca marche pas :/
    le morceau de code est insuffisant pour t'apporter la réponse, il te faut parcourir les éléments récupérés pour connaitre celui qui est coché puis récupérer sa valeur.

    en gros, à l'ancienne pour comprendre ce que l'on fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    function Question1() {
        var oRadio = document.getElementsByName('q1'),
            result, i, nb = oRadio.length;
        for (i = 0; i < nb; i++) {
            if (oRadio[i].checked) result = oRadio[i].value;
        }
        if (result == 1) {
            alert('Bravo')
        } else {
            alert('Perdu !');
        }
    }
    maintenant tu peux être plus "moderne" en utilisant la méthode querySelector (sur MDN)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    function Question1() {
        var result,
            oRadio = document.querySelector('input[type=radio]:checked');
        if (oRadio) {
            result = oRadio.value;
        }
        console.log(oRadio);
        if (result == 1) {
            alert('Bravo')
        } else {
            alert('Perdu !');
        }
    }
    si tu débutes en javascript, je t'engage fortement à regarder de prêt la documentation pour bien commencer et comprendre. De plus les exemples de Quizz foisonnent.

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

Discussions similaires

  1. Récupérer la valeur d'un bouton radio coché en javascript
    Par leara500 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 31/10/2012, 09h28
  2. recupérer la valeur d'un bouton radio
    Par ericmart dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 19/05/2008, 15h42
  3. Réponses: 11
    Dernier message: 27/03/2006, 09h25
  4. Comment récupérer la valeur d'un bouton radio ?
    Par whbh dans le forum Langage
    Réponses: 2
    Dernier message: 20/01/2006, 22h32
  5. [JSP] passer en parametre valeur d un bouton radio
    Par logica dans le forum Servlets/JSP
    Réponses: 19
    Dernier message: 13/05/2005, 14h09

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