Javascript : help sur bascule checkbox ou radio
Résolu/Fermé
clé de 12
Messages postés
141
Date d'inscription
samedi 19 juin 2010
Statut
Membre
Dernière intervention
18 avril 2025
-
26 févr. 2015 à 15:58
clé de 12 Messages postés 141 Date d'inscription samedi 19 juin 2010 Statut Membre Dernière intervention 18 avril 2025 - 27 févr. 2015 à 20:21
clé de 12 Messages postés 141 Date d'inscription samedi 19 juin 2010 Statut Membre Dernière intervention 18 avril 2025 - 27 févr. 2015 à 20:21
A voir également:
- Javascript : help sur bascule checkbox ou radio
- Telecharger javascript - Télécharger - Langages
- Javascript est activé mais ne fonctionne pas ✓ - Forum Réseaux sociaux
- Erreur #125 javascript - Forum Mozilla Firefox
- A javascript error occurred in the main process - Forum Handicap / Accessibilté
- Node.js javascript runtime virus ✓ - Forum Virus
1 réponse
Xavierdu34
Messages postés
216
Date d'inscription
lundi 2 décembre 2013
Statut
Membre
Dernière intervention
10 octobre 2016
21
Modifié par Xavierdu34 le 27/02/2015 à 11:17
Modifié par Xavierdu34 le 27/02/2015 à 11:17
Bon ma réponse ne va pas être du tout optimisée mais surement plus facile à comprendre ainsi et elle est fonctionnelle.
il te faut un script JS comme suivant :
et tu dois remplacer ta ligne php :
par
il te faut un script JS comme suivant :
<script> function coche(i) { var boxv = document.getElementById('boxv'+i); var boxs = document.getElementById('boxs'+i); var boxd = document.getElementById('boxd'+i); var boxe = document.getElementById('boxe'+i); var boxa = document.getElementById('boxa'+i); if(boxv.checked === true || boxs.checked === true || boxd.checked === true) { boxa.checked = false; boxa.disabled = true; boxe.checked = false; boxe.disabled = true; } if(boxe.checked === true || boxa.checked === true) { boxv.checked = false; boxv.disabled = true; boxs.checked = false; boxs.disabled = true; boxd.checked = false; boxd.disabled = true; } if(boxv.checked === false && boxs.checked === false && boxd.checked === false) { boxa.disabled = false; boxe.disabled = false; } if(boxv.checked === false && boxs.checked === false && boxd.checked === false && boxa.checked === false && boxe.checked === false) { boxv.disabled = false; boxs.disabled = false; boxd.disabled = false; boxe.disabled = false; boxa.disabled = false; } } </script>
et tu dois remplacer ta ligne php :
echo "<tr><td><input type='text' size='6' readonly name=nom$i value=$val[2]></td>
par
echo "<tr onclick='coche($i);'><td><input type='text' size='6' readonly name=nom$i value=$val[2]></td>
27 févr. 2015 à 18:01
Cordialement
27 févr. 2015 à 19:30
si je mets<tr onclick='coche($i);'><td><input type='text' size='6' readonly name=nom$i value=$val[2]></td> il ne se passe rien.
Par contre, si je mets onclick='coche($i) dans mes td input type='checkbox' ça marchouille. Je clique sur le 1er checkbox (boxV) ça verrouille la ligne (A et E). Si je reclique pour annuler ça ne libère pas les choix A & E. Si je clique sur le 2 input il ne se passe rien. Je pense en lisant ton code que tu as laissé un côté incomplet pour que je gamberge un peu ce dont je te remercie. J'ai pu deviner ce qu'il me faut faire. Je revois le code et te tiens informé si je n'y arrive pas mais j'ai saisi la philosophie du truc. Merci encore et @+ sans doute. Si j'y arrive (réciprocité) je mettrai le code complet.... Cordialement
Modifié par clé de 12 le 27/02/2015 à 20:24
Mon code ?
if(boxv.checked === true || boxs.checked === true || boxd.checked === true) {
boxa.checked = false;
boxe.checked = false;
}
if(boxe.checked === true ) {
boxv.checked = false;
boxs.checked = false;
boxd.checked = false;
boxa.checked = false;
}
if( boxa.checked === true) {
boxv.checked = false;
boxs.checked = false;
boxd.checked = false;
boxe.checked = false;
}
if(boxv.checked === false && boxs.checked === false && boxd.checked === false) {
boxa.disabled = false;
boxe.disabled = false;
}
if(boxv.checked === false && boxs.checked === false && boxd.checked === false && boxa.checked === false && boxe.checked === false) {
boxv.disabled = false;
boxs.disabled = false;
boxd.disabled = false;
boxe.disabled = false;
boxa.disabled = false;
}
}
</script>
J'ai reçu ta modif entre temps, super sympa.
Cordialement