0

如何在 asp.net 上制作动态下拉列表?

我有一个下拉列表

<asp:DropDownList ID="FirstParameter" runat="server">
    <asp:ListItem Value="1">1</asp:ListItem>
    <asp:ListItem Value="2">2</asp:ListItem>
    <asp:ListItem Value="3">3</asp:ListItem>
</asp:DropDownList>  

一个标签和另一个下拉列表

<asp:Label ID="SecondParameter_Label" runat="server" Text=""></asp:Label>

<asp:DropDownList ID="SecondParameter" runat="server">
</asp:DropDownList> 

当我更改FirstParameter下拉列表上的选择时,文本SecondParameter_Label应根据选择进行更改,因此对于SecondParameter下拉列表,应根据第一个下拉列表上的选定值与数据过滤器绑定。

我已经尝试过这段代码,但它不起作用:

Protected Sub FirstParameter_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles FirstParameter.SelectedIndexChanged
    'Change the label text
    SecondParameter_Label.Text = ReportType_Dropdownlist.SelectedItem.Value

    'Bind value to the SecondParameter dropdownlist
    SecondParameter.DataSource = dataTableName '--> Assumed that I already have the DataTable called from a class
    SecondParameter.DataTextField = "NameofDatabaseColumn"
    SecondParameter.DataValueField = "NameofDatabaseColumn"
    SecondParameter.DataBind()
End Sub

我尝试先更改SecondParameter_Label文本,但仍然无法正常工作。我怎样才能做到这一点?

4

1 回答 1

1

尝试将 AutoPostBack 属性添加到下拉列表中。您还需要在服务器端处理它们。你的第一个下拉菜单应该是这样的:

<asp:DropDownList ID="FirstParameter" runat="server" AutoPostBack="true">
    <asp:ListItem Value="1">1</asp:ListItem>
    <asp:ListItem Value="2">2</asp:ListItem>
    <asp:ListItem Value="3">3</asp:ListItem>
</asp:DropDownList>  
于 2012-05-04T06:15:13.763 回答