CheckBoxList没有更新它的已检查/未检查状态

时间:2009-11-21 18:45:33

标签: c# asp.net checkboxlist

嘿,我有一个填充了数据库的CheckBoxList。当我对单个复选框的状态(选中或取消选中)进行任何更改时,在我提交表单时不会返回它。

最简单的形式,我有:

<asp:CheckBoxList runat="server" ID="listEmployes" RepeatDirection="Horizontal">
</asp:CheckBoxList>

C#:

protected void btnSubmit_Click(object sender, EventArgs e)
{
    _connection.Open();

    var employes = listEmployes.Items;

    foreach (ListItem employe in employes)
    {
        if (employe.Selected)
        {
            _command = new MySqlCommand(String.Format("INSERT IGNORE INTO Liste_Employes (Projet_ID, User_ID) VALUES ({0}, {1})", _projetId, employe.Value), _connection);
        }
        else
        {
            _command = new MySqlCommand(String.Format("DELETE IGNORE FROM Liste_Employes WHERE Projet_ID = {0} AND User_ID = {1}", _projetId, employe.Value), _connection);
        }

        _command.ExecuteNonQuery();
    }


}

我错过了什么吗?感谢。

2 个答案:

答案 0 :(得分:2)

确保你的CheckBoxList没有在回发上反弹(如果你是从代码中进行数据绑定)。

If(!Page.IsPostBack) 
{
    // Bind code
}

答案 1 :(得分:1)

Page_Load方法中包含哪些内容?我猜你在绑定复选框之前没有检查!Page.IsPostBack