Copia, incolla e modifica secondo le tue esigenze
codice:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<style>
.os_setcb {
display: none;
}
</style>
<script>
function hideByStartId(els, c) {
var e = document.getElementsByTagName(els)
for (var i=0; i<e.length; i++)
if (c.test(e[i].id)) e[i].style.display = 'none';
}
function $id(id) {
return (document.getElementById)? document.getElementById(id) : document.all[id];
}
function displayCheckbox(s) {
var id = s.id;
var value = s.value;
var startid = ['^', id , '_'].join('');
var startid_re = new RegExp (startid, 'gi');
hideByStartId('div', startid_re)
if (value != '') {
id_cbgroup = [id, '_', value].join('');
if ($id(id_cbgroup)) {
$id(id_cbgroup).style.display = 'block';
}
}
}
</script>
</head>
<body>
<form>
<fieldset>
<select name="os" id="os" onchange="displayCheckbox(this)">
<option value="">Nessuna scelta</option>
<option value="linux">linux</option>
<option value="windows">windows</option>
</select>
<div id="os_linux" class="os_setcb">
<input type="checkbox" name="distro" value="debian" />Debian
<input type="checkbox" name="distro" value="ubuntu" />Ubuntu
<input type="checkbox" name="distro" value="Suse" />Suse
</div>
<div id="os_windows" class="os_setcb">
<input type="checkbox" name="ver" value="2000" />2000
<input type="checkbox" name="ver" value="XP" />XP
<input type="checkbox" name="ver" value="Vista" />Vista
</div>
</fieldset>
</form>
</body>
</html>