单值从下拉列表中显示其他字段

时间:2016-08-03 17:59:01

标签: c# html asp.net

目前有一个带有两个下拉列表的c#asp.net web aspx页面。第一个下拉列表是可见的,另一个在页面加载时设置为false。我今天的问题是我需要用户从下拉列表中选择一个唯一的(尝试下面的)值,并为该值使另一个下拉列表可见。

我的尝试:  这是标记的样子

ddlCollision is the visible drop down list.

<div class="row500">
            <span class="cell200">
                <asp:DropDownList ID="ddlCollision" runat="server" Height="28px" Width="354px" Style="font-size: 18px" OnSelectedIndexChanged="ddlCollision_SelectedIndexChanged">
<asp:ListItem Value="0"></asp:ListItem>
<asp:ListItem Value="1">People</asp:ListItem>
<asp:ListItem Value="2">Cars(select below)</asp:ListItem>
       
 ddlfixedobject is the non visible drop down list                 
   <div class="row500"  id="fixedObject" runat="server">
    <span class="cell200">
      <asp:DropDownList ID="ddlFixedObject" runat="server" Height="28px" Width="354px" Style="font-size: 18px" OnSelectedIndexChanged="ddlFixedObject_SelectedIndexChanged">
    <asp:ListItem></asp:ListItem>
    <asp:ListItem>Sign post</asp:ListItem>
    <asp:ListItem>Guardrail</asp:ListItem>
   </asp:DropDownList>     
</span>    
</div>      
当选择汽车的值“2”时,我需要出现ddl固定对象!

以下是目前为止索引更改后代码的所有内容......

 protected void ddlCollision_SelectedIndexChanged(object sender, EventArgs e)
{
   {
        if (ddlCollision.SelectedValue == "2")

            fixedObject.Visible = true;
        else
            fixedObject.Visible = false;

    }
}

2 个答案:

答案 0 :(得分:0)

如果您希望在更新第一个下拉列表时回发,可能需要添加AutoPostBack =&#34; True&#34;到第一个DropDownList控件。

答案 1 :(得分:0)

 if(!ispostBack)
 {
    if (ddlCollision.SelectedValue == "2")

        fixedObject.Visible = true;
    else
        fixedObject.Visible = false;

 }

在page_load

中尝试这段代码