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 :

if/else sur des checkbox


Sujet :

JavaScript

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 15
    Points : 8
    Points
    8
    Par défaut if/else sur des checkbox
    Bonjour,
    J'aide un pote à développer une petite appli et je n'arrive pas à me dépatouiller de ce qui semblera peut être simplissime à certains d'entre vous...
    Je cherche à tester des checkbox pour réaliser ou non une action.
    Je m'explique : si la case n°1 OU la case n°2 est cochée, alors cocher automatiquement la case n°3. sinon, décocher la case n°3.
    Est-ce que quelqu'un pourrait me venir en aide ?!
    Voilà un petit bout de la page avec un code pour que vous puissiez voir (dans cet exemple, je ne teste qu'une seule case, pour tenter de simplifier les choses, mais le but est d'en tester 2) :
    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
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtmll/DTD/xhtmll-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Test</title>
    <script language="javascript" type="text/javascript">
     
    function Check_WI () {
    if (cellule1.checked==true)
    {cellule5.checked==true}
    else
    {cellule5.checked==false}
     
    </script>
    </head>
    <body>
    <p id="rubriques_consult"><label>Cases à cocher</label> </BR></BR>
    <input type="checkbox" name="cellule1" value="case1" onclick="Check_WI()"/>Case1 </BR>
    <input type="checkbox" name="cellule2" value="case2"/>Case2 </BR>
    <input type="checkbox" name="cellule3" value="case3"/>Case3 </BR>
    <input type="checkbox" name="cellule4" value="case4"/>Case4 </BR>
    <input type="checkbox" name="cellule5" value="case5"/>Case5 </BR>
    </p>
    </body>
    </html>
    Merci d'avance aux bonnes âmes !

  2. #2
    Membre actif

    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    191
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 191
    Points : 275
    Points
    275
    Par défaut
    Déjà il faut respecter la syntaxe pour insérer du javascript en utilisant <!-- //--> et surtout ne pas oublier de fermer les balises.
    ensuite == est valable pour une condition pas pour affecter une valeur

    et pour finir malgré la bonne syntaxe cela ne fonctionnera pas, car il faut accéder aux objets DOM de la page donc j'ai qu'une chose à dire va faire un tour sur http://javascript.developpez.com/ et bonne lecture

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <script language="javascript" type="text/javascript">
    <!--
    function Check_WI () {
    if (cellule1.checked==true)
    {cellule5.checked=true}
    else
    {cellule5.checked=false}
    }
    //-->
    </script>

  3. #3
    Membre expérimenté

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 060
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 060
    Points : 1 357
    Points
    1 357
    Par défaut
    Bonjour,

    D'après le 'doctype', il s'agit de XHTML.
    Donc :
    • ce n'est pas <!-- //-->, mais //<![CDATA[ //]]>.
    • pour les sauts de ligne, ce n'est pas </br>, mais <br />,
    • il n'y a pas d'élément '<form>'.
    • En ce qui concerne ta fonction, javascript est sensible à la casse, et les caractères utilisés dans l'appel de la fonction doivent être strictement les mêmes que dans le nom de la fonction elle-même, ce qui n'est pas le cas dans ton exemple.

    Pour le reste, lorsque tu appelles ta fonction, tu lui passes en paramètre un pointeur sur la case cochée (this) et un autre sur la case à cocher. Ce qui donne, vite fait :
    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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
      "http://www.w3.org/TR/xhtmll/DTD/xhtmll-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
        <title>Test</title>
        <script type="text/javascript">
          //<![CDATA[
          function Check_WI (caseCoche, caseACocher) 
          {
            if (caseCoche.checked)
              {caseACocher.checked = 'checked'}
            else
              {caseACocher.checked = ''}
          }
          //]]>
        </script>
      </head>
      <body>
        <p id="rubriques_consult">
          <form name="test" id="test" method="post" action="">
            <label>cases à cocher</label> 
            <br /><br />
            <input type="checkbox" name="cellule1" value="case1" onclick="Check_WI(this, this.form.cellule5)"/>case1<br/>
            <input type="checkbox" name="cellule2" value="case2" onclick="Check_WI(this, this.form.cellule3)"/>case2 <br />
            <input type="checkbox" name="cellule3" value="case3" onclick="Check_WI(this, this.form.cellule4)"/>case3 <br />
            <input type="checkbox" name="cellule4" value="case4" onclick="Check_WI(this, this.form.cellule3)"/>case4 <br />
            <input type="checkbox" name="cellule5" value="case5" onclick="Check_WI(this, this.form.cellule1)"/>case5 <br />
          </form>
        </p>
      </body>
    </html>

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

Discussions similaires

  1. Boucler sur des checkboxes multiples
    Par Ben Gates dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 01/10/2012, 17h17
  2. if / else fonction sur des boutons
    Par daninidemars dans le forum ActionScript 1 & ActionScript 2
    Réponses: 0
    Dernier message: 23/03/2008, 13h36
  3. [MySQL] Question sur des if et else
    Par kevinf dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 05/02/2007, 19h26
  4. condition sur des checkbox
    Par bogsy15 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 09/08/2006, 09h28
  5. boucler sur des checkboxes
    Par El Saigneur dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 09/10/2004, 08h27

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