bonjour
je créé un tableau avec des checkbox a l'aide d'un for.
et je voudrais faire un bouton "tout séléctionner" et un autre " tout désélectionner".
mais je sais pas comment faire ...
pourriez vous m'aider svp
merci
<html>
<head>
<title>
Checkboxes
</title>
</head>
<script type="text/javascript">
<!--
function select_all() {
document.check_form.check_1.checked = true;
document.check_form.check_2.checked = true;
document.check_form.check_3.checked = true;
}
function unselect_all() {
document.check_form.check_1.checked = false;
document.check_form.check_2.checked = false;
document.check_form.check_3.checked = false;
}
//-->
</script>
<body>
<form name="check_form" method="post" action="traitement.php">
<input type="checkbox" name="check_1"> Checkbox 1<br>
<input type="checkbox" name="check_2"> Checkbox 2<br>
<input type="checkbox" name="check_3"> Checkbox 3<br>
</form>
<input type="button" name="select_all" value="Tout sélectionner" onclick="select_all()">
<input type="button" name="unselect_all" value="Tout Désélectionner" onclick="unselect_all()">
</body>
</html>
<script type="text/javascript">
<!--
// conteneur = id du bloc (<div>, <p> ...) contenant les checkbox
// a_faire = '0' pour tout décocher
// a_faire = '1' pour tout cocher
// a_faire = '2' pour inverser la sélection
function GereChkbox(conteneur, a_faire) {
var blnEtat=null;
var Chckbox = document.getElementById(conteneur).firstChild;
while (Chckbox!=null) {
if (Chckbox.nodeName=="INPUT")
if (Chckbox.getAttribute("type")=="checkbox") {
blnEtat = (a_faire=='0') ? false : (a_faire=='1') ? true : (document.getElementById(Chckbox.getAttribute("id")).checked) ? false : true;
document.getElementById(Chckbox.getAttribute("id")).checked=blnEtat;
}
Chckbox = Chckbox.nextSibling;
}
}
//-->
</script>
<form>
<input type="button" value="Tout cocher" onClick="GereChkbox('div_chck','1');">
<input type="button" value="Tout décocher" onClick="GereChkbox('div_chck','0');">
<input type="button" value="Inverser la sélection" onClick="GereChkbox('div_chck','2');">
<br /><br />
<div id="div_chck">
<input type="checkbox" name="checkbox1" id="checkbox1" value="1"><label for="checkbox1">Choix 1</label><br />
<input type="checkbox" name="checkbox2" id="checkbox2" value="2"><label for="checkbox2">Choix 2</label><br />
<input type="checkbox" name="checkbox3" id="checkbox3" value="3"><label for="checkbox3">Choix 3</label><br />
<input type="checkbox" name="checkbox4" id="checkbox4" value="4"><label for="checkbox4">Choix 4</label><br />
<input type="checkbox" name="checkbox5" id="checkbox5" value="5"><label for="checkbox5">Choix 5</label>
</div>
</form>
<div id="div_chck">
<td>
<input type="checkbox" name="checkbox1" id="checkbox1" value="1"><label for="checkbox1">Choix 1</label>
</td>
</div>
function select_all() {
var i = 0;
while( document.check_form.elements[i] != null )
if( document.check_form.elements[i].getAttribute("type") == "checkbox" )
document.check_form.elements[i++].checked = true;
}
function unselect_all() {
var i = 0;
while( document.check_form.elements[i] != null )
if( document.check_form.elements[i].getAttribute("type") == "checkbox" )
document.check_form.elements[i++].checked = false;
}
var Chckbox = document.getElementById(conteneur).firstChild;
function GereChkbox(conteneur, a_faire) {
var blnEtat=null;
var Chktd = document.getElementById(conteneur).firstChild;
while (Chktd != null) {
var Chkbox = document.getElementById(Chktd).firstChild;
while (Chckbox!=null) {
if (Chckbox.nodeName=="INPUT")
if (Chckbox.getAttribute("type")=="checkbox") {
blnEtat = (a_faire=='0') ? false : (a_faire=='1') ? true : (document.getElementById(Chckbox.getAttribute("id")).checked) ? false : true;
document.getElementById(Chckbox.getAttribute("id")).checked=blnEtat;
}
Chckbox = Chckbox.nextSibling;
}
Chcktd = Chcktd.nextSibling;
}
}
<div id="div_chck">
<td>
<input type="checkbox" name="checkbox1" id="checkbox1" value="1"><label for="checkbox1">Choix 1</label>
</td>
</div>Les éléments <td> ne peuvent pas être placés ailleurs que dans un <tr>, qui lui-même ne peut être que dans un <table> (ou <tbody>)
Combien cela coûte-t-il au total ? Quelles aides apportent l'état et les acteurs du marché pour alléger cette charge non choisie ? Tous les détails sur Commentçamarche.net.
Pour ton tableau, j'imagine que quelque part, tu as une boucle. A l'intérieur de cette boucle, tu as une ligne qui génère la case à cocher, j'imagine. A cet endroit-là, en php, tu connais le futur nom de la check box. Disons que c'est un truc du genre "check_".$i, comme dans l'exemple de mr Penguin.
Juste en dessous de cette ligne, rajoute donc
$script_checkall .= "document.check_form.check_".$i.".checked = true;\n"
$script_uncheckall .= "document.check_form.check_".$i.".checked = false;\n"
Ainsi, dans les variables $script_checkall et $script_uncheckall, tu as le contenu des scripts fournis par mr Penguin.
Il te suffit ensuite de l'envoyer à la page :
echo " <script type=\"text/javascript\">\n"; echo " <!--\n"; echo " function select_all() {\n"; echo $script_checkall; echo " }\n"; echo " function unselect_all() {\n"; echo $script_uncheckall; echo " }\n"; echo " //-->\n"; echo " </script>\n";Voilà :)Xavier