Originariamente inviato da zenzot
Si, a chi mi compilerà il form dovrò dare la possibilità di selezionare il radio A oppure B, e con un autopostback cambiare lo stato di visibilità delle checkboxlist relative.
Cmq stavo provando il tuo ultimo esempio e mi genera il seguente errore alla riga 5: La clausola Handles richiede una variabile WithEvents.
Mi pare che ti stia contraddicendo
Se devi fare un autopostback, cioè se devi mandare al server la pagina ogni volta che l'utente seleziona un radio, che ti serve javascript? Se invece vuoi non andare al server, puoi fare come ti ho detto.
Se vuoi che alla partenza della pagina sia selezionato il radio A, per esempio, nell'evento load della pagina (client però) puoi mettere:
document.getElementById("RadioButtonA").checked = true;
r_ab_click();
oppure, metti:
<asp:radiobutton id="RadioButtonA" runat="server" Text="Radio A" GroupName="radio_a_b" Checked="true"/>
e
<asp:checkboxlist id="CheckBoxListB" runat="server" style="visibility:hidden;"/>
Per quanto riguarda il mio esempio, non ti ho dato tutto il codice
codice:
Public Class a
Inherits System.Web.UI.Page
#Region " Codice generato da Progettazione Web Form "
'Chiamata richiesta da Progettazione Web Form.
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
End Sub
Protected WithEvents RadioButtonA As System.Web.UI.WebControls.RadioButton
Protected WithEvents RadioButtonB As System.Web.UI.WebControls.RadioButton
Protected WithEvents CheckBoxListA As System.Web.UI.WebControls.CheckBoxList
Protected WithEvents CheckBoxListB As System.Web.UI.WebControls.CheckBoxList
Protected WithEvents Button1 As System.Web.UI.WebControls.Button
'NOTA: la seguente dichiarazione è richiesta da Progettazione Web Form.
'Non spostarla o rimuoverla.
Private designerPlaceholderDeclaration As System.Object
Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
'CODEGEN: questa chiamata al metodo è richiesta da Progettazione Web Form.
'Non modificarla nell'editor del codice.
InitializeComponent()
End Sub
#End Region
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'Inserire qui il codice utente necessario per inizializzare la pagina
If Not Me.IsPostBack Then
Dim dt As DataTable = Libreria.GetDataTable(StringaConnessione, "select codice_istat_regione, nome_regione from regioni")
Me.CheckBoxListA.DataSource = dt
Me.CheckBoxListA.DataTextField = "nome_regione"
Me.CheckBoxListA.DataValueField = "codice_istat_regione"
Me.CheckBoxListA.DataBind()
Me.CheckBoxListB.DataSource = dt
Me.CheckBoxListB.DataTextField = "nome_regione"
Me.CheckBoxListB.DataValueField = "codice_istat_regione"
Me.CheckBoxListB.DataBind()
End If
End Sub
Private Sub RadioButtonA_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles RadioButtonA.Init
Dim r As System.Web.UI.WebControls.RadioButton = DirectCast(sender, System.Web.UI.WebControls.RadioButton)
r.Attributes.Add("onclick", "r_ab_click();")
End Sub
Private Sub RadioButtonB_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles RadioButtonB.Init
Dim r As System.Web.UI.WebControls.RadioButton = DirectCast(sender, System.Web.UI.WebControls.RadioButton)
r.Attributes.Add("onclick", "r_ab_click();")
End Sub
End Class