如何在asp.net中的复选框列表中获取选定的索引。我是否应该循环查找列表框是否被选中,或者我可以在不这样做的情况下知道。我想这样做如何查找是否在asp.net中选中复选框列表
如果(CheckBoxList的选择) {做到这一点} 其他 {做到这一点}
如何,如果选中该复选框列表或不在asp.net找到
int roleselected = ckl_EditRole.Items.SelectedIndex;
如何在asp.net中的复选框列表中获取选定的索引。我是否应该循环查找列表框是否被选中,或者我可以在不这样做的情况下知道。我想这样做如何查找是否在asp.net中选中复选框列表
如果(CheckBoxList的选择) {做到这一点} 其他 {做到这一点}
如何,如果选中该复选框列表或不在asp.net找到
int roleselected = ckl_EditRole.Items.SelectedIndex;
对于CheckBoxList,SelectedIndex
将为您提供CheckBoxList中的第一个选定索引。如果它不是-1,那么选择一些东西。这可能足以满足您的需求。
if(ckl_EditRole.SelectedIndex != -1)
{
// Do Something
}
但是,由于CheckBoxList可以有多个选择,您可能想循环遍历Items并查找选定的项。
foreach(ListItem li in ckl_EditRole.Items)
{
if(li.Selected)
{
// Do Something
}
}
如果你的目的是让尽可能通过你的代码给选定的复选框的指标,也可以通过LINQ的下面实现这一点(没有for循环)。
ckl_EditRoleItems.OfType<ListItem>().Where(p=>p.Selected).Select(p => ckl_EditRoleItems.Items.IndexOf(p)).ToArray<int>();
该语句将返回一个int数组,其中包含所选复选框的索引。