Bonjour tout le forum,
Je souhaite attribuer une valeur à des "type radio" s'ils sont affichés à l'écran et suivant le nombre d'affichés. C'est l'utilisateur qui choisit les colonnes qu'il souhaite afficher.
Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 <td data-ordre="1" style="display: none;" class="basF"><input type="radio" name="1" id="capacite1_1_2" value="1"/></td> <td data-ordre="2" class="basF"><input type="radio" name="1" id="capacite1_1_3" value="2"/></td> <td data-ordre="3" class="basF"><input type="radio" name="1" id="capacite1_1_4" value="3"/></td> <td data-ordre="4" class="basF"><input type="radio" name="1" id="capacite1_1_5" value="4"/></td> <td data-ordre="5" style="display: none;" class="basF"><input type="radio" name="1" id="capacite1_1_6" value="5"/></td> <td data-ordre="6" class="basF"><input type="radio" name="1" id="capacite1_1_7" value="6"/></td> <td data-ordre="7" style="display: none;" class="basF"><input type="radio" name="1" id="capacite1_1_8" value="7"/></td> <td data-ordre="8" style="display: none;" class="basF"><input type="radio" name="1" id="capacite1_1_9" value="8"/></td
Dans cet exemple, je dois attribuer :
- La valeur 0 au type radio de la colonne data-ordre="2"
Pour les autres, je dois répartir 8 points, comme ici il y a 3 autres colonnes.
- La valeur 8/3 au type radio de la colonne data-ordre="3"
- La valeur 16/3 au type radio de la colonne data-ordre="4"
- La valeur 24/3 au type radio de la colonne data-ordre="6"
Au moment où l'utilisateur sélectionne ses colonnes, je compte le nombre de colonnes affichées dans l'en-tête.
Je n'arrive pas à sélectionner le bon type radio et à lui attribuer la valeur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 function compterVisible() { let nbCoche = 0; for (let i = 1; i <= 8; i++) { let celluleTh = document.querySelectorAll("th[data-ordre='" + i + "']"); if (celluleTh[0].style.display == "") { nbCoche++; } } }
Comment faire ? Utiliser querySelector ? getElementById ? getElementsByName ?
J'ai fait plusieurs tentatives sans succès.
Mon code complet ici
Merci pour votre aide.
Partager