Ho trovato la soluzione, spero che a qualcuno un giorno possa servire
Codice PHP:
<HTML>
<HEAD>
<script type="text/javascript">
function dennis(selezionata){
//ricavo l'oggetto che contiene l'elenco delle province
option=document.getElementById("province")
//il numero di opzioni precedenti
var dim_prec=option.length
//un array per ogni regione
ar_pie=new Array();
ar_val=new Array();
ar_lig=new Array();
//rimepio gli array con le province
ar_pie[0]=new Option('Torino','Torino');
ar_pie[1]=new Option('Asti','Asti');
ar_pie[2]=new Option('Alessandria','Alessandria');
ar_val[0]=new Option('Aosta','Aosta');
ar_lig[0]=new Option('Genova','Genova');
ar_lig[1]=new Option('La Spezia','La Spezia');
//a seconda della voce selezionata nella prima combo, scelgo a quele array assegnare la combo delle province
if(selezionata=="Piemonte")
array_rif=ar_pie;
if(selezionata=="Valle d'Aosta")
array_rif=ar_val;
if(selezionata=="Liguria")
array_rif=ar_lig;
//inizializzo la combo delle province in modo opportuno
for(i=0;i<array_rif.length;i++)
document.form1.province.options[i]=array_rif[i];
//dimensione attuale del numero di opzione
dim_att=array_rif.length
//rimuovo le opzioni in eccesso
if(dim_att<dim_prec)
{
for(var i=dim_att;i<dim_prec;i++)
{
option.remove(option.length-1)
}
}
}
</script>
</HEAD>
<BODY>
<form name="form1">
<select name="regioni" onChange="dennis(this[selectedIndex].value)">
<option value="Regione">Regione</option>
<option value="Piemonte">Piemonte</option>
<option value="Valle d'Aosta">Valle d'Aosta</option>
<option value="Liguria">Liguria</option>
</select>
<select id="province">
<option>Provincia</option>
</select>
</BODY>
</HTML>