选中/选择如何确定复选框列表-

|| 当我执行代码时,我得到了4个复选框,并且我选中/选中了所有4个复选框,当我尝试调试代码时,它的确算出我有4个复选框,但所有4个复选框均被选中= false。 我在代码中缺少什么?
<asp:checkboxlist id=\"chk\" runat=\"server\" ondatabinding=\"chk_DataBinding\"
   ondatabound=\"chk_DataBound\">
</asp:checkboxlist>

List<String> roles = new List<string>();

 for (int i = 0; i < chk.Items.Count; i++)
 {
     if (chk.Items[i].Selected)
    {
        roles.Add(chk.Items[i].Value);
    }
 }
    
已邀请:
您的逻辑与
ListControl.Items
页面上给出的基本ѭ1一致,并且从个人经验来看,检查
ListItem
.Selected
属性应该可以正常工作。 在点击“如果选中”逻辑之前,请确保没有重新填充
CheckBoxList
-如果我不得不猜测,我很可能会丢失列表每次回发。一种简单的解决方案是,如果是回发,则不要调用您的数据绑定逻辑。     
public string[] CheckboxListSelections(System.Web.UI.WebControls.CheckBoxList list)
{
 ArrayList values = new ArrayList();
 for(int counter = 0; counter < list.Items.Count; counter++)
 {
  if(list.Items[counter].Selected)
  {
   values.Add(list.Items[counter].Value);
  }    
 }
 return (String[]) values.ToArray( typeof( string ) );
}
    

要回复问题请先登录注册