OnCheckedChanged event handler of asp:checkbox does not fire when checkbox is unchecked

前端 未结 6 1607
我寻月下人不归
我寻月下人不归 2020-12-11 00:24

I have a repeater, in each ItemTemplate of the repeater is an asp:checkbox with an OnCheckedChanged event handler set. The checkboxes have the AutoPostBack property set to t

6条回答
  •  情话喂你
    2020-12-11 00:39

    You have to define eventhandler for checklist out of repeater item command, then inside the repeater item command, go through checklist items and get checked items.

    In the .aspx page you can use Ajax and updatepanel to fire eventhandler, but keep in mind you have to define scriptmanage outside of repeater.

    // checklisk checkedchange eventhandler

    protected void chkLinked_CheckedChanged(Object sender, EventArgs args)
            {
            }
    

    and item repeater command item: // iterate checklist items and detect checked

        protected void Repeater1_ItemCommand(object sender, RepeaterCommandEventArgs e)
        {
            CheckBoxList cbl = (CheckBoxList)e.Item.FindControl("CheckBoxList1");
            cbl.SelectedIndexChanged += new EventHandler(chkLinked_CheckedChanged);
    
            string name = "";
            for (int i = 0; i < cbl.Items.Count; i++)
            {
                if (cbl.Items[i].Selected)
                {
                    name += cbl.Items[i].Text.Split(',')[0] + ",";
                }
            }
        }
    

提交回复
热议问题