In Asp.Net la gestione della visibilità di un oggetto di una pagina aspx è molto complicata bisogna fare i salti mortali per utilizzare gli eventi client con javascript.
In primis, evita di utilizzare il controllo server <asp:RadioButton. Io non sono riuscito ad aggiungere l'evento onclink client. Se tu ci riuscissi, ti prego di farmelo sapere.
Allora, utilizzando due semplicissimi controlli html come:
codice:
<INPUT type="radio" name="r_ab" id="r_a" value="a" onclick="r_ab_click();"><INPUT type="radio" name="r_ab" id="r_b" value="b" onclick="r_ab_click();">
adesso devi aggiungere la funzione client r_ab_click
ma, che cosa devi visualizzare e nascondere?
Dipende da che cosa rende asp.net: nel mio caso il controllo <asp:CheckBoxList è reso con una tabella, perciò la funzione sarà:
codice:
function r_ab_click()
{
if(document.Form1.r_a.checked)
{
document.getElementById("CheckBoxListA").style.visibility = "hidden";
document.getElementById("CheckBoxListB").style.visibility = "visible";
}
else
{
document.getElementById("CheckBoxListA").style.visibility = "visible";
document.getElementById("CheckBoxListB").style.visibility = "hidden";
}
}
Questo almeno che, ubbidendo ad una logica contorta ma rispettabilissima, tu non voglia rimandare sempre, anche con una connessione ultralenta, la pagina al server per riprocessarla. In questo caso puoi utilizzare la proprietà Visible per il controllo...
Ciao