gpt4 book ai didi

c# - 单击 CheckBoxList 上的项目时需要显示一些内容

转载 作者:行者123 更新时间:2023-12-02 13:16:31 27 4
gpt4 key购买 nike

嘿,我遇到了这个非常烦人的问题:我有一个 CheckBoxList 从数据源获取项目及其值和所有内容。我需要的是在选中值为“33”的项目时显示一些面板。所以我需要获取单击的项目、上次单击的内容或其他内容...我尝试了很多方法,但它不起作用...以下 3 行都无法获得我需要的值:

protected void chkServicos_SelectedIndexChanged(object sender, EventArgs e)
{
//
// Just trying to get the "clicked" value
//

CheckBoxList cbl = sender as CheckBoxList;
Response.Write(cbl.SelectedIndex);
Response.Write(cbl.SelectedItem);
Response.Write(cbl.SelectedValue);
}

最佳答案

你做错了什么。您很可能假设 33 将是 .SelectedValue 的值。如果列表中有多个项目,则 SelectedValue 将仅产生第一个选定的项目。此代码有效:

 <form id="form1" runat="server">
<asp:CheckBoxList ID="CheckBoxList1" runat="server"
onselectedindexchanged="CheckBoxList1_SelectedIndexChanged">
<asp:ListItem Value="33">33</asp:ListItem>
<asp:ListItem Vaue="Not 33">Not 33</asp:ListItem>
</asp:CheckBoxList>
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
</form>

protected void CheckBoxList1_SelectedIndexChanged(object sender, EventArgs e)
{
Response.Write((sender as CheckBoxList).SelectedValue); // prints 33 if 33 is selected
}

当然,如果您在列表中选择了多个项目,结果可能不是您所期望的。您可能会考虑这样的事情:

  ListItem selected33 = CheckBoxList1.Items.Cast<ListItem>()
.Where(item => item.Value == "33" && item.Selected).SingleOrDefault();

if (selected33 != null)
{
Response.Write("33 is selected");
}

关于c# - 单击 CheckBoxList 上的项目时需要显示一些内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1869118/

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