Page 1 sur 1
Select All/Deselect Al
Posté : 26 mars 2010, 14:01
par Hawk16
Bonjour,
j'ai un formulaire en php, qui contient des checkboxes, je voudrai ajouter un checkbox qui permettra de faire un Select All/Deselect All.
en fait les valeurs des checkboxes sont stocker dans tableau tab_box[].
pouvez vous me dire comment faire ?
Re: Select All/Deselect Al
Posté : 26 mars 2010, 14:44
par stopher
Slt ,
perso, je ferais avec du javascript !
Re: Select All/Deselect Al
Posté : 26 mars 2010, 16:09
par Hawk16
slt,
j'ai trouver ce code :
Code : Tout sélectionner
<!-- Script by hscripts.com -->
<!-- copyright of HIOX INDIA -->
<!-- Free javascripts @ http://www.hscripts.com -->
<script type="text/javascript">
checked=false;
function checkedAll (frm1) {
var aa= document.getElementById('frm1');
if (checked == false)
{
checked = true
}
else
{
checked = false
}
for (var i =0; i < aa.elements.length; i++)
{
aa.elements[i].checked = checked;
}
}
</script>
<!-- Script by hscripts.com -->
Avec ce ode ça marche quant on déclare les checkboxes come suit :
<form id ="frm1">
<input type="checkbox" name="chk1">
<input type="checkbox" name="chk2">
</form>
mais dans mon cas les valeurs des checkboxes sont stocker dans un tableaux :
Code : Tout sélectionner
<input type="checkbox" name="bug_arr[]" value="<?php echo "$v_id" ?>" />
comment faire pour récupérer les valeurs du tableaux ?
Re: Select All/Deselect Al
Posté : 26 mars 2010, 18:44
par AB
Ben si tu récupères un tableau il suffit de lister le tableau du post
if (isset($_POST['bug_arr'])) foreach ($_POST['bug_arr'] as $value) echo $value;
Re: Select All/Deselect Al
Posté : 29 mars 2010, 12:28
par Hawk16
Le script Java :
Code : Tout sélectionner
<script type="text/javascript" language="javascript">
function checkAll()
{
var i;
for(i=0;i<document.frm.elements.length; i++)
{
var elm = document.frm.elements[i];
if(elm.type == "checkbox" && elm.name != "chkCheckAll" )
{
elm.checked =document.frm.chkCheckAll.checked;
}
}
}
function check()
{
var i;
var flag;
flag=1;
for(i=0;i<document.frm.elements.length; i++)
{
var elm = document.frm.elements[i];
if(elm.type == "checkbox" && elm.name != "chkCheckAll" )
{
if(elm.checked==false)
{
flag=0;
}
}
}
if(flag==1)
{
document.frm.chkCheckAll.checked=true;
}
else
{
document.frm.chkCheckAll.checked=false;
}
}
</script>
Le code des checkboxes :
Code : Tout sélectionner
<td align="center" bgcolor="<?php echo $status_color ?>">
<input type="checkbox" name="bug_arr[]" value="<?php echo "$v_id" ?>" onClick="Javascript:return check();" />
</td>
Le code de la checkboxe select all/none :
Code : Tout sélectionner
<td rowspan ="<?php echo $nb_ligne; ?>" align="center">
<input type="checkbox" id="chkCheckAll" name="chkCheckAll" onClick="javascript:checkAll();" >
</td>
Merci

Re: Select All/Deselect Al
Posté : 29 mars 2010, 20:43
par AB
Pour reprendre ton exemple initial, testes ce code dans une page séparée et tu comprendras mieux le fonctionnement :
<?php
if (isset($_POST['bug_arr']) && is_array($_POST['bug_arr']))
{
foreach ($_POST['bug_arr'] as $key => $value)
{
echo 'name = '.$key.' valeur = '.$value.'<br />';
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>test</title>
<script type="text/javascript">
checked=false;
function checkedAll (id) {
var aa= document.getElementById(id);
if (checked == false)
{
checked = true
}
else
{
checked = false
}
for (var i =0; i < aa.elements.length; i++)
{
aa.elements[i].checked = checked;
}
}
</script>
</head>
<body>
<form action="#" method="post" id = "frm" >
<p>
<input type="button" name="id_client" value="Sélectionnez tout" onclick = "checkedAll('frm')" />
<input type="checkbox" name="bug_arr[]" value="1">
<input type="checkbox" name="bug_arr[]" value="10">
<input type="submit" name="Confirmer" value="submit" />
</p>
</form>
</body>
</html>