Я создал каскадный выпадающий список.
Это первый ddl:
<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack ="true" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
<asp:ListItem Text="-- Select One --"></asp:ListItem>
<asp:ListItem Text="Game"></asp:ListItem>
<asp:ListItem Text="Book"></asp:ListItem>
2-й элемент ddl добавляется на основе элемента, выбранного в ddl1 (OnSelectedIndexChanged)
3-й элемент dll добавляется на основе элемента, выбранного в ddl2 (OnSelectedIndexChanged)
У меня есть проблема, которая возникает, когда я использую DropDownList3.SelectedItem.Text, он всегда возвращает мне первый элемент (CSGO или Dota на основе каждого выбора), ddl1 и ddl2 прекрасно работают для меня.
Вот функция ddl2:
protected void DropDownList2_SelectedIndexChanged(object sender, EventArgs e)
{
DropDownList3.Visible = true;
if (DropDownList2.SelectedValue == "A")
{
DropDownList3.Items.Clear();
DropDownList3.Items.Insert(0, new ListItem("-Select-", "N"));
DropDownList3.Items.Insert(1, new ListItem("CSGO", ""));
DropDownList3.Items.Insert(2, new ListItem("CSO", ""));
DropDownList3.Items[0].Attributes["disabled"] = "disabled";
}
else if (DropDownList2.SelectedValue == "B")
{
DropDownList3.Items.Clear();
DropDownList3.Items.Insert(0, new ListItem("-Select-", "N"));
DropDownList3.Items.Insert(1, new ListItem("Dota", ""));
DropDownList3.Items.Insert(2, new ListItem("LoL", ""));