asp.net - 为什么此 ASP.Net 代码隐藏中的 if 语句不起作用?

标签 asp.net drop-down-menu controls

我有一个填充有整数的下拉列表。当选择“1”时,应该出现一个文本框。我在另一个项目中做了类似的事情,但在这里不起作用。

感谢任何帮助。

C# 代码:

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        ddlHowMany.Items.Add(new ListItem("0", "0"));
        ddlHowMany.Items.Add(new ListItem("1", "1"));
        ddlHowMany.Items.Add(new ListItem("2", "2"));
        ddlHowMany.Items.Add(new ListItem("3", "3"));
    }
}

protected void ddlHowMany_SelectedIndexChanged(object sender, EventArgs e)
{
    // int howMany = Convert.ToInt32(ddlHowMany.SelectedValue);
    if (ddlHowMany.SelectedIndex == 1)
    {
        txtGraphic1Desc.Visible = true;
    }
}

默认.aspx代码:

 <asp:DropDownList ID="ddlHowMany" runat="server"  
                    onselectedindexchanged="ddlHowMany_SelectedIndexChanged" 
                    style="margin-left: 8px" Width="50px">
                </asp:DropDownList>
                <br />
                <br />
                <asp:TextBox ID="txtGraphic1Desc" class="descriptions" runat="server" Height="92px" 
                    TextMode="MultiLine"
                    Width="328px" Font-Names="Trebuchet MS" Visible="False">Description of graphic #1</asp:TextBox>

最佳答案

您要添加autoPostBack="true"到下拉列表。

 <asp:DropDownList ID="ddlHowMany" runat="server"  
                    onselectedindexchanged="ddlHowMany_SelectedIndexChanged" 
                    style="margin-left: 8px" Width="50px" AutoPostBack="true">

关于asp.net - 为什么此 ASP.Net 代码隐藏中的 if 语句不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15347715/

相关文章:

JQuery Bounce 效果改变元素的大小

asp.net - 从 Controller 构造函数访问 Request.Cookies

javascript - 删除下拉列表中的空白选项

Jquery 切换选择表单控件禁用状态?

c++ - 没有选项卡的 MFC 选项卡控件?

ASP.NET、MySQL 和 div 元素 - 如何用于我的在线广播电台站点?

javascript - CKEditor 中使用的 CKFinder 在我的 ASP 中不起作用

javascript - 将 ddsmoothmenu 子菜单侧更改为左侧

javascript - 从下拉列表中选择值以转到 URL

c++ - CMFCToolTipCtrl 或 CTooltipManager 示例?