Probleme javascript

Résolu/Fermé
atout1 Messages postés 216 Date d'inscription mardi 11 mai 2010 Statut Membre Dernière intervention 17 juin 2011 - 19 août 2010 à 15:17
Defouille Messages postés 388 Date d'inscription mercredi 13 janvier 2010 Statut Membre Dernière intervention 15 novembre 2011 - 20 août 2010 à 14:43
Bonjour, tt le monde

je veux mon checkbox Tout cocher coche tous les autres checkbox sauf les deux premier
voici mon code; le pb est que le checkbox tout cocher coche rien du tout et je ne comprends pas prkoi ???

Merci pour votre aide

<script langage="javascript">
function selectAll()
{
for(i=0;i<document.listeObjetForm.length;i++)
{
if(document.listeObjetForm.elements[i].type == "checkbox" )
{
if(document.listeObjetForm.elements[i].name == "MoyT" || document.listeObjetForm.elements[i].name == "MoyS" )
{
document.listeObjetForm.elements[i].checked = false;
}
else
{
document.listeObjetForm.elements[i].checked = true;
}
}
}
}

</script>

<?php
echo "
<form class='centrer' name='listeObjetForm'>
<input name='MoyT' type='checkbox' value='MoyT' /> Moy T
<input name='MoyS' type='checkbox' value='MoyS' /> Moy S
<input type='checkbox' name='tout' onClick='selectAll()'/> Tout cocher
<input type='checkbox' name='12'/>
<input type='checkbox' name='13'/>
<input type='checkbox' .name='18'/>
<input type='checkbox' name='22'/>
<input type='checkbox' name='24'/>
</form> ";
?>



1 réponse

Defouille Messages postés 388 Date d'inscription mercredi 13 janvier 2010 Statut Membre Dernière intervention 15 novembre 2011 54
19 août 2010 à 15:29
Bonjour,

Je ne connais pas "listeObjetForm" et apparement firebug n'aime pas non plus :p
je te propose une alternative getElementsByTagName :

function selectAll()
{
	var inputs = document.getElementsByTagName('input') ;
	for(i=0;i<inputs.length;i++)
	{
		if(inputs[i].type == "checkbox" )
		{
			if(inputs[i].name == "MoyT" || inputs[i].name == "MoyS" )
				inputs[i].checked = false;
			else
				inputs[i].checked = true;
		}
	}
}


0
atout1 Messages postés 216 Date d'inscription mardi 11 mai 2010 Statut Membre Dernière intervention 17 juin 2011
19 août 2010 à 15:36
salut
merci pour la réponse, je veux tester

en fait listeObjForm c'est le nom du <form>
0
atout1 Messages postés 216 Date d'inscription mardi 11 mai 2010 Statut Membre Dernière intervention 17 juin 2011
19 août 2010 à 15:46
ça marche mais le pb il coche tout les chekbox de la page et moi je veux ke pour un form spécifique
0
Defouille Messages postés 388 Date d'inscription mercredi 13 janvier 2010 Statut Membre Dernière intervention 15 novembre 2011 54
Modifié par Defouille le 19/08/2010 à 15:55
remplace
var inputs = document.getElementsByTagName('input') ;

par
var inputs = document.getElementById('listeObjForm').getElementsByTagName('input') ;


Et rajoute l'id listeObjForm a ton form :
<form class="centrer" id= "listeObjForm" name="listeObjetForm"> 
0
atout1 Messages postés 216 Date d'inscription mardi 11 mai 2010 Statut Membre Dernière intervention 17 juin 2011
Modifié par atout1 le 19/08/2010 à 16:03
ca ne marche plus :S quand j'ajout getElementById('listeObjForm') et l'id a mon form
0
Defouille Messages postés 388 Date d'inscription mercredi 13 janvier 2010 Statut Membre Dernière intervention 15 novembre 2011 54
19 août 2010 à 16:11
Avec ce code cela marche très bien...

<script langage="javascript">
function selectAll()
{
	var inputs = document.getElementById('listeObjetForm').getElementsByTagName('input') ;
	for(i=0;i<inputs.length;i++)
	{
		if(inputs[i].type == "checkbox" )
		{
			if(inputs[i].name == "MoyT" || inputs[i].name == "MoyS" )
				inputs[i].checked = false;
			else
				inputs[i].checked = true;
		}
	}
}

</script>


<form class="centrer" id="listeObjetForm" name="listeObjetForm">
<input name="MoyT" type="checkbox" value="MoyT" /> Moy T
<input name="MoyS" type="checkbox" value="MoyS" /> Moy S
<input type="checkbox" name="tout" onClick="selectAll()"/> Tout cocher
<input type="checkbox" name="12"/>
<input type="checkbox" name="13"/>
<input type="checkbox" .name="18"/>
<input type="checkbox" name="22"/>
<input type="checkbox" name="24"/>
</form> 
<form class="centrer" id="listeObjetForm2" name="listeObjetForm2">
<input name="MoyT" type="checkbox" value="MoyT" /> Moy T
<input name="MoyS" type="checkbox" value="MoyS" /> Moy S
<input type="checkbox" name="tout" onClick="selectAll()"/> Tout cocher
<input type="checkbox" name="12"/>
<input type="checkbox" name="13"/>
<input type="checkbox" .name="18"/>
<input type="checkbox" name="22"/>
<input type="checkbox" name="24"/>
</form> 



As tu fais attention au guillemets simples et doubles ?
0