[英]Get unchecked list item value from checkboxlist c#
In below example , checkboxlist list 6 list items and if I uncheck any item , i should be able to get the unchecked value在下面的示例中,checkboxlist 列出了 6 个列表项,如果我取消选中任何项,我应该能够获得未选中的值
<asp:CheckBoxList id="chkbxFileTypes" runat="server" OnSelectedIndexChanged="chkbxFileTypes_SelectedIndexChanged" AutoPostBack=true>
<asp:ListItem>Item 1</asp:ListItem>
<asp:ListItem>Item 2</asp:ListItem>
<asp:ListItem>Item 3</asp:ListItem>
<asp:ListItem>Item 4</asp:ListItem>
<asp:ListItem>Item 5</asp:ListItem>
<asp:ListItem>Item 6</asp:ListItem>
</asp:CheckBoxList>
If I uncheck Item1 list item, i need to get the value of the same ?如果我取消选中 Item1 列表项,我需要获得相同的值?
Which event should i use , as now I use selected index change and it just gives me selected value and not the unselected value ?我应该使用哪个事件,因为现在我使用选定的索引更改,它只给我选定的值而不是未选定的值?
Please help请帮忙
In yourcode behind you can handel the event chkbxFileTypes_SelectedIndexChanged
like :在后面的代码中,您可以处理事件chkbxFileTypes_SelectedIndexChanged
例如:
protected void chkbxFileTypes_SelectedIndexChanged(object sender, EventArgs e)
{
List<ListItem> selected = chkbxFileTypes.Items.Cast<ListItem>()
.Where(li => ! li.Selected)
.ToList();
}
or with a simple foreach:或使用简单的 foreach:
List<string> selectedValues = chkbxFileTypes.Items.Cast<ListItem>()
.Where(li => ! li.Selected )
.Select(li => li.Value)
.ToList();
protected void chkbxFileTypes_SelectedIndexChanged(object sender, EventArgs e)
{
string checkedid = "";
string uncheckedValue = "";
foreach (ListItem val in chkbxFileTypes.Items)
{
if (val.Selected)
{
checkedid += val.Value + " ";
}
else
{
uncheckedValue += val.Value + ",";
}
}
}
protected void chkbxFileTypes_SelectedIndexChanged(object sender, EventArgs e)
{
string eventTarget = Request.Form.Get("__EVENTTARGET");
int index = Convert.ToInt32(eventTarget.Substring(eventTarget.Length-1));
bool isUnchecked = !chkbxFileTypes.Items[index].Selected;
if (isUnchecked)
{
string value = chkbxFileTypes.Items[index].Value;
}
}
Use "__EVENTTARGET" form element to find the index of target checkbox and then check if its unchecked.使用“__EVENTTARGET”表单元素查找目标复选框的索引,然后检查是否未选中。 If its unchecked then get it's value.如果未选中,则获取它的值。
protected void chkbxFileTypes_SelectedIndexChanged(object sender, EventArgs e)
{
string checkedValue = "";
string uncheckedValue = "";
foreach (ListItem val in chkbxFileTypes.Items)
{
if (val.Selected)
{
checkedValue += val.Value + " ";
}
else
{
uncheckedValue += val.Value + ",";
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.