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 :

traitement de base javascript


Sujet :

JavaScript

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Par défaut traitement de base javascript
    Bonjour à tous,

    Voila, j'éspère obtenir votre aide sur une fonction en javascript dont je n'arrive pas because novice.
    Le but: un formulaire checkbox avec 6 choix possible, lorsque le sizième choix est coché, on doit décoché toutes les autres cases coché et quand le sizième choix est coché on doit pas pouvoir coché les autres cases.

    le formulaire:
    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
     
    <form name="formulaire" id="formulaire" action="confirmation.php" method="post"  onsubmit="return(verif_formulaire);"  >
    <input type="checkbox" name="finished1" id="finished1" value="The Mystery of the Mummy" />The Mystery of the Mummy
    </p>
    <p>
    <input type="checkbox" name="finished2" id="finished2"  value="The Silver Earring" />The Silver Earring
    </p>
    <p>
    <input type="checkbox" name="finished3" id="finished3" value="The Awakened" />The Awakened
    </p>
    <p>
    <input type="checkbox" name="finished4" id="finished4" value="Sherlock Holmes versus Arsene Lupin (Sherlock Holmes : Nemesis) " />Sherlock Holmes versus Arsene Lupin (Sherlock Holmes : Nemesis)
    </p>
    <p>
    <input type="checkbox" name="finished5" id="finished5" value="The Awakened (remastered edition)" />The Awakened (remastered edition)
    </p>
    <p>
    <input type="checkbox" name="finished6" id="finished6" value="None" onclick="finished()" />None
    la fonction javascript:
    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
     
    <script language="javascript">
     function episode()
         {
        // compte tous les éléments du formulaire
    	//declaration de objet en .js[elements] 
        var temp = document.formulaire.elements.length;
         if (document.formulaire.elements[6].checked)
         { // si la case est cochée
         for (i=6; i < temp; i++)
         { // on coche toutes les autres
         document.formulaire.elements[i].checked=0  ;
         }
         }
         else 
         {
         for (i=6; i < temp; i++)
         { // on décoche tout
         document.formulaire.elements[i].checked=1;
         }
         }
         }
    function finished()
         {
        // compte tous les éléments du formulaire
        var temp = document.formulaire.elements.length;
         if (document.formulaire.elements[6].checked)
         { // si la case est cochée
         for (i=0; i < temp; i++)
         { // on coche toutes les autres
         document.formulaire.elements[i].checked;
         }
         }
         else
         {
         for (i=0; i < temp; i++)
         { // on décoche tout
         document.formulaire.elements[i].checked();
         }
         }
         }
     
    </SCRIPT>
    la fonction actuelle permet de coché toutes les cases ou de décoché toutes les cases. je ne sais vraiment plus comment faire pour arrivé au but.
    merci de l'aide que vous pourrez m'apporter
    sam!

  2. #2
    Membre Expert
    Inscrit en
    Septembre 2002
    Messages
    2 307
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 307
    Par défaut
    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
    function finished(chBox)
         {
    	 valCheck=!chBox.checked;
        // compte tous les éléments du formulaire
        var temp = document.formulaire.elements.length;
     
    	     for (i=0; i < temp; i++)
    	     { 
    			if(document.formulaire.elements[i].type=="checkbox" && document.formulaire.elements[i]!=chBox)
    				{
    					document.formulaire.elements[i].checked=valCheck;
    				}
    	     }
     
     
    }
     
     
    <input type="checkbox" name="finished6" id="finished6" value="None" onclick="finished(this)" />None

    checked est un attribut que tu peux mettre à true/false;

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Par défaut
    merci beaucoup.
    j'ai encore quelque problème donc je ne sais pas résoudre par moi même

    - lorsque je coche le bouton none, ca decoche bien les autres choix du formulaire mais si je décoche le none ça coche tous les autres choix, comment pourrais-je résoudre ce problème?

    - J'ai deux formulaires checkbox mais avec un traitement différent, comment puis-je les appeler différement dans le traitement javascript?

    soit le premier formulaire:
    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
     
    <input type="checkbox" name="episode1" id="episode1"  value="The Mystery of the Mummy"  />The Mystery of the Mummy
    </p>
    <p>
    <input type="checkbox" name="episode2"  id="episode2" value="The Silver Earring" />The Silver Earring
    </p>
    <p>
    <input type="checkbox" name="episode3" id="episode3" value="The Awakened" />The Awakened
    </p>
    <p>
    <input type="checkbox" name="episode4"  id="episode4" value="Sherlock Holmes versus Arsene Lupin (Sherlock Holmes : Nemesis)" />Sherlock Holmes versus Arsene Lupin (Sherlock Holmes : Nemesis)
    </p>
    <p>
    <input type="checkbox" name="episode5" id="episode5" value="The Awakened (remastered edition)" />The Awakened (remastered edition)
    </p>
    <p>
    <input type="checkbox" name="episode6" id="episode6" value="None" onclick="episode()"  />None
    le deuxième formulaire:
    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
     
    <input type="checkbox" name="finished1" id="finished1" value="The Mystery of the Mummy" />The Mystery of the Mummy
    </p>
    <p>
    <input type="checkbox" name="finished2" id="finished2"  value="The Silver Earring" />The Silver Earring
    </p>
    <p>
    <input type="checkbox" name="finished3" id="finished3" value="The Awakened" />The Awakened
    </p>
    <p>
    <input type="checkbox" name="finished4" id="finished4" value="Sherlock Holmes versus Arsene Lupin (Sherlock Holmes : Nemesis) " />Sherlock Holmes versus Arsene Lupin (Sherlock Holmes : Nemesis)
    </p>
    <p>
    <input type="checkbox" name="finished5" id="finished5" value="The Awakened (remastered edition)" />The Awakened (remastered edition)
    </p>
    <p>
    <input type="checkbox" name="finished6" id="finished6" value="None" onclick="finished(this)" />None
    avec la fonction qui m'a était gentillement donné
    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
     
    function finished(chBox)
         {
    	 valCheck=!chBox.checked;
        // compte tous les éléments du formulaire
        var temp = document.formulaire.elements.length;
     
    	     for (i=0; i < temp; i++)
    	     { 
    			if(document.formulaire.elements[i].type=="checkbox" && document.formulaire.elements[i]!=chBox)
    				{
    					document.formulaire.elements[i].checked=valCheck;
    				}
    	     }
     
     
    }
    merci pour votre aide qui est toujours de grande qualité

  4. #4
    Membre Expert
    Inscrit en
    Septembre 2002
    Messages
    2 307
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 307
    Par défaut
    Citation Envoyé par samspitz Voir le message
    - J'ai deux formulaires checkbox mais avec un traitement différent, comment puis-je les appeler différement dans le traitement javascript?
    j'ai limpression que tu as un seul formulaire avec deux sortes de liste!

    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
     function episode(chBox)     {
        checkBxList(chBox,"episode");
    }
     
    function finished(chBox){
    	checkBxList(chBox,"finished");
    }	
     
    function checkBxList(chBox, chName)
         {
    	 valCheck=!chBox.checked;
        // compte tous les éléments du formulaire
        var temp = chBox.form.elements.length;
     
    	     for (i=0; i < temp; i++)
    	     { 
    			if(chBox.form.elements[i].type=="checkbox" 
    			&& chBox.form.elements[i].name.indexOf(chName)==0
    			&& chBox.form.elements[i]!=chBox) {
    					chBox.form.elements[i].checked=valCheck;
    				}
    	     }     
     
    }
     
    <input type="checkbox" name="episode6" id="episode6" value="None" onclick="episode(this)"  />None

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Par défaut
    Encore merci,
    il me reste un souci:
    - quand je clique sur none il me décoche bien les autre choix en cochant la case. mais si par la suite je décoche la case none il coche toutes les autres cases, comment gérer ca?

    la fonction:
    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
     
     function episode(chBox)     {
        checkBxList(chBox,"episode");
    }
     
    function finished(chBox){
    	checkBxList(chBox,"finished");
    }	
     
    function checkBxList(chBox, chName)
         {
    	 valCheck=!chBox.checked;
        // compte tous les éléments du formulaire
        var temp = chBox.form.elements.length;
     
    	     for (i=0; i < temp; i++)
    	     { 
    			if(chBox.form.elements[i].type=="checkbox" 
    			&& chBox.form.elements[i].name.indexOf(chName)==0
    			&& chBox.form.elements[i]!=chBox) {
    					chBox.form.elements[i].checked=valCheck;
    				}
    	     }     
     }
    merci

  6. #6
    Membre Expert
    Inscrit en
    Septembre 2002
    Messages
    2 307
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 307
    Par défaut
    if (valCheck){}
    ou son inverse

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Par défaut
    Désolé mais j'ajoute ca ou et comment?
    merci

  8. #8
    Membre Expert
    Inscrit en
    Septembre 2002
    Messages
    2 307
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 307
    Par défaut
    presque n'inporte tout dans la fonction...

  9. #9
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 284
    Par défaut
    j'ai ajouter ceci sans succès
    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
     
    function checkBxList(chBox, chName)
         {
    	 valCheck=!chBox.checked;
        // compte tous les éléments du formulaire
        var temp = chBox.form.elements.length;
        if (valCheck){}
    	     for (i=0; i < temp; i++)
    	     { 
    			if(chBox.form.elements[i].type=="checkbox" 
    			&& chBox.form.elements[i].name.indexOf(chName)==0
    			&& chBox.form.elements[i]!=chBox) {
    					chBox.form.elements[i].checked=valCheck;
     
    				}
    	     }     
     
    }
    toujours le meme resultat

  10. #10
    Membre Expert
    Inscrit en
    Septembre 2002
    Messages
    2 307
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 307
    Par défaut
    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
    function checkBxList(chBox, chName)
         {
    	 valCheck=!chBox.checked;
        // compte tous les éléments du formulaire
        var temp = chBox.form.elements.length;
        if (!valCheck){
    	     for (i=0; i < temp; i++)
    	     { 
    			if(chBox.form.elements[i].type=="checkbox" 
    			&& chBox.form.elements[i].name.indexOf(chName)==0
    			&& chBox.form.elements[i]!=chBox) {
    					chBox.form.elements[i].checked=valCheck;
     
    				}
    	     }     
     }
    }

Discussions similaires

  1. Traitement Ajax dans Javascript avec Struts
    Par nemoMiagiste dans le forum Struts 1
    Réponses: 3
    Dernier message: 26/12/2012, 16h16
  2. Extraction et traitement de base de données
    Par n0vocaine dans le forum Conception
    Réponses: 2
    Dernier message: 16/07/2011, 14h50
  3. [AJAX] base javascript --> PHP
    Par Ulath0 dans le forum AJAX
    Réponses: 5
    Dernier message: 06/08/2010, 13h02
  4. traitement de base d'une image
    Par maraval dans le forum Traitement d'images
    Réponses: 7
    Dernier message: 18/03/2010, 15h19
  5. Traitement de base d'image
    Par Freyja dans le forum C++
    Réponses: 14
    Dernier message: 17/07/2006, 17h49

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