0
<asp:DropDownList ID="ddl1" runat="server" AutoPostBack="True" Width="110px">
    <asp:ListItem>Test1</asp:ListItem>
    <asp:ListItem>Test2</asp:ListItem>
    <asp:ListItem>Test3</asp:ListItem>
</asp:DropDownList> 

<asp:DropDownList ID="ddl2" runat="server" Width="110px">

</asp:DropDownList>

<asp:Button ID="btnSubmit" runat="server" Text="Submit" />

我正在尝试根据所选索引将列表项添加到 ddl1.SelectedIndexChanged 上的 ddl2。

ddl2.Items.Insert(0, New ListItem("Please Select", "-1"))
ddl2.Items.Insert(1, New ListItem("value2", "1"))
ddl2.Items.Insert(2, New ListItem("value3", "2"))

Protected Sub ddl1_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs) Handles ddl1.SelectedIndexChanged
    ddl2.Items.Clear()


      If (ddl1.SelectedIndex = 0) Then
 ddl2.Items.Insert(0, New ListItem("Please Select", "-1"))
    ddl2.Items.Insert(1, New ListItem("value2", "1"))
    ddl2.Items.Insert(2, New ListItem("value3", "2"))
End if
End Sub

提交时我无法保留 ddl2 的选定值。

请帮我提出建议。我尝试使用隐藏值,仍然不成功。

注意:我正在使用用户控件。

4

1 回答 1

0

不要忘记将 ddl1 的 Autopostback 属性设置为 true。

把它放在 ddl1 中选择索引改变

If ddl1.SelectedValue = "test1" Then
    ddl2.Items.Add("one")
ElseIf ddl1.SelectedValue = "test2" Then
    ddl2.Items.Add("two")
Else
    ddl2.items.Add("three")
End If

把它放在按钮点击

Label1.Text = "first : " + ddl1.SelectedValue.ToString() + "Second :" + ddl2.SelectedValue.ToString()

我试过了,它有效。根据你的要求改变这个

于 2013-08-20T05:41:04.630 回答