我试图找出为什么这段代码不会触发单选按钮更改事件。
这是2个单选按钮的ASP页面代码
<asp:RadioButton ID="rdoButton1" GroupName="Group1" Text="Yes" Value="Yes" runat="server" OnCheckedChanged="Group1_CheckedChanged" />
<asp:RadioButton ID="rdoButton2" GroupName="Group1" Text="No" Value="No" runat="server" OnCheckedChanged="Group1_CheckedChanged" />
这是背后的代码:
protected void Group1_CheckedChanged(Object sender, EventArgs e)
{
if (rdoButton1.Checked) {
panel1.Visible = true;
}
if (rdoButton2.Checked) {
panel1.Visible = false;
}
}
答案 0 :(得分:32)
您需要指定属性和值AutoPostBack="true"
,以告知ASP.NET更改 元素应该触发回发。它应该应用于您希望引发回发的每个单独的RadioButton。
答案 1 :(得分:5)
您应该将AutoPostBack=True
属性添加到两个控件中。
答案 2 :(得分:4)
您必须为两个控件指定AutoPostBack=True
答案 3 :(得分:2)
我会改用RadioButtonList
。并根据您的目的设置AutoPostBack=true
。
答案 4 :(得分:2)
您应该设置AutoPostBack = True并在函数句柄后面的代码中。
示例:
Protected Sub RadioButton1_CheckedChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles RadioButton1.CheckedChanged