Immagino tu abbia una serie di checkbox con lo stesso name in modo che sia sequenziale (ad es name="check[]"), allora puoi associare l'evento onclick di un altro checkbox con una funzione che modifica i checkbox con un ciclo for.
Ora mi spiego:
Metti di avere il seguente HTML:
Codice PHP:
Check/Uncheck All: <input type="checkbox" onclick="checkUncheck(this)" />
</p>
<form name="form" action="" method="post">
<input type="checkbox" name="check[]" />
</p>
<input type="checkbox" name="check[]" />
</p>
<input type="checkbox" name="check[]" />
</p>
<input type="checkbox" name="check[]" />
</p>
<input type="checkbox" name="check[]" />
</p>
<input type="checkbox" name="check[]" />
</p>
<input type="checkbox" name="check[]" />
</p>
<input type="checkbox" name="check[]" />
</p>
</form>
Nota che il checkbox che sta in cima ha una proprietà chiamata onclick. Quello è l'evento, sostanzialmente dice "quando clicchi su questo input attiva quella funzione Javascript". Ci sono altri eventi, che sono altrettanto utili, ma al fine della discussione ti serve questo.
Ora andiamo a creare la funzione checkUncheck:
Codice PHP:
function checkUncheck(check)
{
var checks = document.getElementsByName('check[]');
for(i = 0; i < checks.length; i++)
{
checks[i].checked = check.checked;
}
}
Questa funzione prende in ingresso come parametro un Element, ovvero un oggetto che rappresenta un TAG della pagina.
La funzione in questo caso otterrà l'elemento chiamante, ovvero il checkbox su cui andiamo a cliccare.
La prima cosa che fa è utilizzare una funzione dell'elemento document, che rappresenta tutta la pagina HTML, chiamata getElementsByName, che ritorna un Array (collezione di oggetti) contenente tutti gli Elementi che hanno name = al paramentro passato (in questo caso il nome dei checkbox).
Sull'array, faccio un ciclo for (una iterazione, c'è anche in asp), e, per ogni elemento dell'array setto la proprietà checked (proprietà dei checkbox che indica se sono selezionati) al valore che il checkbox che vado a cliccare assume.
Spero di essere stato chiaro.
P.S. Questa funzione la devi mettere in un tag <script type="text/javascript"></script> nell'head della pagina.