gpt4 book ai didi

c# - 如果用户单击特定的下拉列表项,我的面板将无法显示

转载 作者:行者123 更新时间:2023-11-30 23:10:46 26 4
gpt4 key购买 nike

我正在尝试获取 <div>在特定的 ListItem 时出现被选中。

在我后面的代码中有:

protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e) 
{
if (reportedBefore.SelectedItem.Text=="yes")
{
reportedBeforePanel.Visible = true;
}
else
{
reportedBeforePanel.Visible = false;
}
}

我提到了 this article here最初,这表明我需要一些东西:

You need to Enable the AutoPostBack of the dropdownlist for raising the OnSelectedIndexChanged event on server side.

AutoPostBack="true"
OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged

诚然,我没有 AutoPostBack前。添加后,由于某种原因,恐怕要求 div仍然没有显示。

<asp:DropDownList ID="reportedBefore" CssClass="larger-drop-2" AutoPostBack="true" runat="server" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
<asp:ListItem Text="Select" Value="Select"></asp:ListItem>
<asp:ListItem Text="No" Value="No"></asp:ListItem>
<asp:ListItem Text="Yes" Value="Yes"></asp:ListItem>
<asp:ListItem Text="Unsure" Value="Unsure"></asp:ListItem>
</asp:DropDownList>
<asp:Panel ID="reportedBeforePanel" runat="server" Visible="false">
<div id="showDiv">
<label for="yesDetails">
Please provide details
</label>
<asp:TextBox ID="yesDetails" CssClass="third-w-form" runat="server"/>
</div>
</asp:Panel>

有人会这么好心帮我吗?

最佳答案

问题出在以下if-条件中:

reportedBefore.SelectedItem.Text=="yes"

通过这种方式,您正在进行区分大小写的字符串比较(这是 .NET 中的默认设置),但是下拉列表中的值以不同的方式编写("is""is")。

为了解决这个问题,要么执行不区分大小写的字符串比较

string.Compare(reportedBefore.SelectedItem.Text, "yes", true) == 0

或更改 if 语句中的大小写。

关于c# - 如果用户单击特定的下拉列表项,我的面板将无法显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45163483/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com