三个带有自动回发的下拉列表

时间:2013-02-19 16:08:58

标签: c# combobox webforms

我有三个dropdownlistautopostback = true。首先选择国家/地区并在第二个dropdownlist中显示城市,然后从第二个dropdownllist中选择城市,并在第三个下拉列表中显示区域。但问题是,当我在第一个dropdownlist(例如美国)中选择第三个值,然后在第二个下拉列表中选择其中一个值(例如Los angles)时,页面会刷新并选择美国,然后首先选择了第二个dropdownlist中的值(我无法选择其他值,因为页面刷新时第一个值会再次选择。

1 个答案:

答案 0 :(得分:0)

您需要设置默认值(例如“请选择...”)

<asp:DropDownList ID="ddl1" AppendDataBoundItems="true" runat="server">
    <asp:ListItem Text="Please Select..." Value="" />
</asp:DropDownList>

或者在第一个下拉列表的SelectedIndexChanged事件中,绑定第二个下拉列表,然后立即根据第二个选定值绑定第三个下拉列表。

理论上:

public void ddl1_selectedindexchanged(){
   BindDdl2();
   BindDdl3();
}

public void ddl2_selectedindexchanged(){
   BindDdl3();
}

private void BindDdl2(){
   int selectedvalue = ddl1.SelectedValue;
   //bind ddl2
}

private void BindDdl3(){
   int selectedvalue = ddl2.SelectedValue;
   //bind ddl3
}