繁体   English   中英

ASP.Net DropDownList SelectedIndexChanged事件触发但什么都不做

[英]ASP.Net DropDownList SelectedIndexChanged Event fires but does nothing

我有以下ASP.Net代码:

code.aspx:

<asp:UpdatePanel ID="upMain" runat="server">
    <ContentTemplate>
        <table>
          <tr>
            <td>DropDownList One</td>
            <td>
                <asp:DropDownList ID="ddlOne" runat="server" AutoPostBack="true"
                    OnSelectedIndexChange="ddlOne_SelectedIndexChanged" />
            </td>
            <td>DropDownList Two</td>
            <td>
                <asp:DropDownList ID="ddlTwo" runat="server" />
            </td>
          </tr>
        </table>
    </ContentTemplate>
</asp:UpdatePanel>

code.aspx.cs:

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
       ddlTwo.Visible = false;
    }
}

protected void ddlOne_SelectedIndexChanged(object sender, EventArgs e)
{
    ddlTwo.Visible = true;
}

我所期待的:

这个代码应该在ddlOne选择的索引改变时使ddlTwo可见。

实际发生的事情:

在更改ddlOne的索引时, ddlOne_SelectedIndexChanged函数运行(使用debug测试)和ddlTwo.Visible = true; 也运行,但是当我逐步完成整个过程时,属性发生了变化,但是当函数结束并且我想看到我的结果(即可见的ddlTwo控件)时,没有结果。

如果有人能发现问题,请告诉我。 谢谢!

尝试

<Triggers>
    <asp:AsyncPostBackTrigger ControlID="ddlOne" 
    EventName="SelectedIndexChanged" />
</Triggers>

内部更新面板。

改变这一行

OnSelectedIndexChange="ddlOne_SelectedIndexChanged"

OnSelectedIndexChanged="ddlOne_SelectedIndexChanged"

它应该工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM