Forse col secondo metodo diventa un po troppo complicato per le mie capacità.

Per quanto riguarda l'uso dell' Id mi sembra che funzioni bene, se non fosse che mi manca ancora un tassello per finire l'operazione.
All'entrata della pagina alcuni check sono disabilitati.
Quando il check che deve abilitare altri check è checked, tutto è ok.
Il codice che uso è il seguente dove ON_OFF ha un valore 1 / 0 a seconda che il check abiliti o disabiliti i check che hanno un particolare Id

<input type="checkbox" name="N_Alternativa" value="<%=N_Alternativa%>" onClick="PROVA(<%=ID_Domanda%>,<%=ON_OFF%>)" id="<%=ID_Domanda_Livello%>" >


function PROVA(ID_DOMANDA,ON_OFF){
var cb = document.myform.N_Alternativa;
if(ON_OFF == "1")
for (var i=0; i<cb.length; i++) {
if(cb[i].id == ID_DOMANDA) cb[i].disabled = false;
}

}


Però quando si riclicca, e quindi il check che precedentemente ha abillitato altri check diventa checked=false, devo capire come fare per far diventare gli altri check disabilitati nuovamente.

if(ON_OFF == "1")
if (myform.N_Alternativa[3].checked==true)
for (var i=0; i<cb.length; i++) {
if(cb[i].id == ID_DOMANDA) cb[i].disabled = true;
}

Il problema è che N_Alternativa[3] dovrebbe essere dinamico: cioè dovrebbe essere lo stesso check che ho cliccato in precedenza.
C'è un modo per rilevare e passare il numero del check che è stato cliccato in precedenza?