Probleme javascript

Résolu
atout1 Messages postés 216 Date d'inscription   Statut Membre Dernière intervention   -  
Defouille Messages postés 388 Date d'inscription   Statut Membre Dernière intervention   -
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   Statut Membre Dernière intervention   54
 
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   Statut Membre Dernière intervention  
 
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   Statut Membre Dernière intervention  
 
ç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   Statut Membre Dernière intervention   54
 
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   Statut Membre Dernière intervention  
 
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   Statut Membre Dernière intervention   54
 
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