Partage
  • Partager sur Facebook
  • Partager sur Twitter

[JS]masquer un champ

lorsqu'on arrive sur la page

    9 janvier 2006 à 7:12:10

    Salut,
    Voici mon code (le script n'est pas de moi )

    <head>
    <script language="Javascript">
    // ==================
    // Activations - Désactivations
    // ==================
    function GereControle(Controleur, Controle, Masquer) {
    var objControleur = document.getElementById(Controleur);
    var objControle = document.getElementById(Controle);
    if (Masquer=='1')
    objControle.style.visibility=(objControleur.checked==true)?'visible':'hidden';
    else
    objControle.disabled=(objControleur.checked==true)?false:true;
    return true;
    }
    </script>
    </head>
    <body>
    Choisissez votre rubrique ainsi que la nature de votre article :<br /><br />
    <input type="checkbox" id="nintendo" onClick="GereControle('nintendo', 'nintendo_1', '0');" > <label for="nintendo">Nintendo</label>
    <select id="nintendo_1">
    <option value="tests">Test</option>
    <option value="reviews">Reviews</option>
    <option value="dossiers">Dossier</option>
    <option value="redactions">Redaction</option>
    <option value="previews">Previews</option>
    </select>

    le script permet de masquer la liste deroulante de droite si la case n'est pas cochée
    Seul hic, lorsque l'on arrive sur la page, meme si la case est décochée, la liste deroulante ne se masque pas, il faut cochée puis décochée pour qu'elle se masque :(
    Quelqu'un aurait il une solution pour qu'elle se masque des l'arrivé sur la page?

    • Partager sur Facebook
    • Partager sur Twitter
      9 janvier 2006 à 9:08:30

      Salut, rajoutes ta fonction dans la balise body :

      <body onLoad="GereControle('nintendo', 'nintendo_1', '0')">


      ++
      • Partager sur Facebook
      • Partager sur Twitter
        9 janvier 2006 à 10:48:50

        Magnifique!
        Merci beaucoup :p

        edit: euh, une derniere question, comment dois-je procéder pour plusieur option?
        (car j'ai d'autre a part nintendo et ils me posent le meme probleme :-° )
        • Partager sur Facebook
        • Partager sur Twitter
          9 janvier 2006 à 11:41:00

          Bonjour,

          var init = new Array();
          //Configure ça et juste ça
          init[0] = new Array('nitendo', 'nitendo_1');
          init[1] = new Array('autre', 'autre_encore');
          init[2] = new Array('...', '...');
          //Tu peux en rajouter autant que tu veux

          function init(){
            for(var i=0, l = init.length; i < l; i++)
              GereControle(init[i][0], init[i][1], 0);
          }


          // ==================
          // Activations - Désactivations
          // ==================
          function GereControle(Controleur, Controle, Masquer) {
          var objControleur = document.getElementById(Controleur);
          var objControle = document.getElementById(Controle);
          if (Masquer=='1')
          objControle.style.visibility=(objControleur.checked==true)?'visible':'hidden';
          else
          objControle.disabled=(objControleur.checked==true)?false:true;
          return true;
          }

          //Dernière ligne à ajouter :
          window.onload = init;

          Avec ce code, tu configure juste l'array comme je te l'ai montré en haut et tu enlève le code de ratdecav du tag body.



          Bisous, Nyu
          • Partager sur Facebook
          • Partager sur Twitter
            9 janvier 2006 à 19:50:59

            Salut
            Merci de t'etre penché sur mon probleme mais je n'arrive pas a faire marcher le script, je m'y prend surement mal
            voici mon nouveau code
            <head>
            <script language="Javascript">
            var init = new Array();
            //Configure ça et juste ça
            init[0] = new Array('nitendo', 'rubrique_nitendo');
            init[1] = new Array('mangas', 'rubrique_mangas');
            //Tu peux en rajouter autant que tu veux

            function init(){
              for(var i=0, l = init.length; i < l; i++)
                GereControle(init[i][0], init[i][1], 0);
            }


            // ==================
            // Activations - Désactivations
            // ==================
            function GereControle(Controleur, Controle, Masquer) {
            var objControleur = document.getElementById(Controleur);
            var objControle = document.getElementById(Controle);
            if (Masquer=='1')
            objControle.style.visibility=(objControleur.checked==true)?'visible':'hidden';
            else
            objControle.disabled=(objControleur.checked==true)?false:true;
            return true;
            }

            //Dernière ligne à ajouter :
            window.onload = init;
            }
            </script>

            </head>
            <body>
            <form action="#" method="POST">
            Choisissez votre rubrique ainsi que la nature de votre article :<br /><br />
            <input type="checkbox" name="nintendo"id="nintendo" onClick="GereControle('nintendo', 'nintendo_1', '0');" > <label for="nintendo">Nintendo</label>
            <select id="nintendo_1" name="rubrique_nintendo">
            <option value="tests">Test</option>
            <option value="reviews">Reviews</option>
            <option value="dossiers">Dossier</option>
            <option value="redactions">Redaction</option>
            <option value="previews">Previews</option>
            </select><br><br>
            <input type="checkbox" name="mangas" id="mangas" onClick="GereControle('mangas', 'mangas_1', '0');" > <label for="mangas">Mangas</label>
            <select id="mangas_1" name="rubrique_mangas">
            <option value="redactions">Redaction</option>
            </select><br><br><br>
            <input type="submit" value="valider">
            </form>
            </body>

            Si quelqu'un avait une idée :(
            • Partager sur Facebook
            • Partager sur Twitter

            [JS]masquer un champ

            × 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