目前有一个带有两个下拉列表的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>
以下是目前为止索引更改后代码的所有内容......
protected void ddlCollision_SelectedIndexChanged(object sender, EventArgs e)
{
{
if (ddlCollision.SelectedValue == "2")
fixedObject.Visible = true;
else
fixedObject.Visible = false;
}
}
答案 0 :(得分:0)
如果您希望在更新第一个下拉列表时回发,可能需要添加AutoPostBack =&#34; True&#34;到第一个DropDownList控件。
答案 1 :(得分:0)
if(!ispostBack)
{
if (ddlCollision.SelectedValue == "2")
fixedObject.Visible = true;
else
fixedObject.Visible = false;
}
在page_load
中尝试这段代码