Javascript : help sur bascule checkbox ou radio
Résolu/Fermé
clé de 12
Messages postés
139
Date d'inscription
samedi 19 juin 2010
Statut
Membre
Dernière intervention
3 novembre 2024
-
26 févr. 2015 à 15:58
clé de 12 Messages postés 139 Date d'inscription samedi 19 juin 2010 Statut Membre Dernière intervention 3 novembre 2024 - 27 févr. 2015 à 20:21
clé de 12 Messages postés 139 Date d'inscription samedi 19 juin 2010 Statut Membre Dernière intervention 3 novembre 2024 - 27 févr. 2015 à 20:21
A voir également:
- Javascript : help sur bascule checkbox ou radio
- Telecharger javascript - Télécharger - Langages
- Afficher un tableau javascript en html ✓ - Forum Javascript
- Javascript echo ✓ - Forum PHP
- Erreur #125 javascript - Forum Mozilla Firefox
- A javascript error occurred in the main process - Forum Handicap / Accessibilté
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