Désactiver automatiquement des checkbox si on en coche 1 autre[RESOLU]

Désactiver automatiquement des checkbox si on en coche 1 autre[RESOLU] - HTML/CSS - Programmation

Marsh Posté le 11-06-2009 à 11:39:55    

Bonjour,  
 
je fais mes premiers pas en javascript, et j'ai un petit problème dont je ne trouve pas la réponse... :  
le contexte est une gestion de commandes.  
 
j'ai un formulaire avec plusieurs cases à cocher, une pour chaque élément de la commande, et une pour la commande globale. Elles servent respectivement à supprimer un élément ou supprimer toute la commande.  
 
Ce que j'aimerais, c'est que lorsque je coche la case de la commande globale, toutes les autres cases soient "disabled". Mais ça ne marche pas... :(
Et le top serait que si je coche une case concernant un élément, la case pour supprimer la commande en entier soit désactivée... mais là, ça semble hors de portée :P
 
Voilà mon code :  
 

Code :
  1. <script type="text/javascript">
  2.   function Valider(formulaire)
  3.   {
  4.    for (var i=1; i<=8; i++)
  5.    {
  6.     var tmp=("tabSuppr" + i);
  7.     if(formulaire.tabSuppr.checked == true) {formulaire.tmp.disabled = true }
  8.     if(formulaire.tabSuppr.checked == false) {formulaire.tmp.disabled = false }
  9.    }
  10.   }
  11.  </script>


 
Concernant le formulaire, il est à l'intérieur d'un "WHILE" (je fais une requête SQL)
 

Code :
  1. <?php
  2. $tmp=0;
  3. while ($row = mysql_fetch_assoc($result))
  4. {
  5. if ($tmp==0)
  6. {
  7.  echo "<form method=\"post\" action=\"supprCommand_script.php\">";
  8.  echo "<b>Supprimer toute la commande</b> <input type=\"checkbox\" name=\"tabSuppr\" value=\"1\" onClick=\"Valider(this.form)\">";
  9.  <table border="1">
  10.   <tr>
  11.    <th style="width:150px" >
  12.     Référence
  13.    </th>
  14.    <th style="width:150px" >
  15.     Modèle
  16.    </th>
  17.    <th width=50px>
  18.     Suppr.
  19.    </th>
  20.   </tr>
  21.   <?php
  22.   $tmp=1;
  23. }
  24.   ?>
  25.   <tr>
  26.    <td style="text-align:center">
  27.     <?php
  28.     echo $row['reference'];
  29.     ?>
  30.    </td>
  31.    <td style="text-align:center">
  32.     <?php
  33.     echo $row['modele'];
  34.     ?>
  35.    </td>
  36.    <td style="text-align:center">
  37.     <?php
  38.     $numSuppr=$i+1;
  39.     echo "<input type=\"checkbox\" name=\"tabSuppr".$numSuppr."\" value=\"".$numSuppr."\" enabled>";
  40.     ?>
  41.    </td>
  42.   </tr>
  43.   <?php
  44.   $i=$i+1;
  45. }
  46. ?>
  47.  </table>
  48.  <INPUT TYPE="submit" NAME="modif" VALUE="Supprimer cette commande/ces éléments" onClick="return(confirm('Etes vous sur de vouloir supprimer cette commande/ces éléments ?'));" BORDER=0>
  49.  </form>


 
Merci d'avance pour votre aide !!


Message édité par buzza01 le 13-06-2009 à 13:22:30
Reply

Marsh Posté le 11-06-2009 à 11:39:55   

Reply

Marsh Posté le 13-06-2009 à 13:06:34    

Utilise la fonction getElementById() pour trouver une checkbox :
 
<input type="checkbox" id="cb1">
 
Donne un id à tes check box.
 
Et dans ta fonction javascript :
 
pour tes conditions :
document.getElementById("cb1" ).checked == true
document.getElementById("cb1" ).checked == false
 
Pour tes affectation :
document.getElementById("cb1" ).checked = true
document.getElementById("cb1" ).checked = false
 
Voila, c'est tout  :)

Reply

Marsh Posté le 13-06-2009 à 13:19:52    

Excellent, ça marche !!  
Merci Pascal :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed