嵌套的ASP.NET DropDownList SelectedIndexChanged未触发

时间:2011-01-11 23:30:15

标签: c# asp.net-4.0

由我的整个开发小组运行这个无济于事。看起来很简单,这就是问题所在。

我有一个带有单个非数据绑定下拉列表的UserControl。然后将UserControl放到母版页上,然后加载到一个继承的webform中,该控件手动加载到页面上。

没有AJAX,直接回传。

我遇到的问题是没有为DropDownList的第二个实例触发SelectedIndexChanged事件。第一个就好了。

TIA

以下是ascx的代码:

<asp:dropdownlist id="SelectLanguage" autopostback="true" runat="server" enableviewstate="true">
    <asp:listitem>- Select Language -</asp:listitem>
    <asp:listitem value="xxx">Netherlands</asp:listitem>
    <asp:listitem value="xxx">United Kingdom</asp:listitem>
    <asp:listitem value="xxx">United States</asp:listitem>
</asp:dropdownlist>

以下是用户控件的CB:

protected override void OnInit(EventArgs e)
{
    SelectLanguage.SelectedIndexChanged += new EventHandler(SelectLanguage_SelectedIndexChanged);
    base.OnInit(e);
}

protected void SelectLanguage_SelectedIndexChanged(object sender, EventArgs e)
{
    // do something
}

2 个答案:

答案 0 :(得分:0)

第二次下拉列表实际上是否会发生回发,或者页面什么都不做?

如果没有发生回发,则您的网页上会出现javascript错误。

答案 1 :(得分:0)

不确定这是怎么回事,但是FancyBox灯箱jQuery库我们用来在第二个下拉菜单周围做灯箱效果,不知何故弄乱了后端的绑定。没有实时的时间来弄清楚为什么,只要让它知道,以防其他人遇到这个问题。