Ciao Artorius, e grazie per la risposta!
Uhm... però mi sembra di capire che in questa maniera sono vincolato ad avere un solo checkbox, e non posso passare uno o più elementi da nascondere/visualizzare (come 'gianni')

Ho scritto questa funzione, che mi sembra che... funzioni :-) C'è qualche controindicazione?
codice:
function showHide(c,r,a) {
	// c = checkbox, r = rows/items, a = action
	// usare showHide(this,'target','') oppure showHide('trigger','target','')
	var e = r.split("|");
	var std = ""; var alt = "none";
	if (a != '') { var std = "none"; var alt = ""; }
	if ((typeof(c)) == 'string') { c = document.getElementById(c); }
	if (c.checked) {
		for(var i=0; i<e.length; i++) { document.getElementById(e[i]).style.display = std; }
	} else {
		for(var i=0; i<e.length; i++) { document.getElementById(e[i]).style.display = alt; }
	}
}