当前位置:首页 > ASP教程 > 存储过程

取消用户在ASP CheckBoxList中选择的项目

我期望这是相当简单的,但是我找不到/想出简单/智能的解决方案.

我有一个CheckBoxList,它有一个OnSelectedIndexChanged事件.如果用户选择(选中)框中的一个项目,则触发该事件并执行后面的代码.简单.

现在,如果用户取消选中一个框,我需要在后台做一些工作,但是问题是,当用户随后在列表中取消选择某个项目时,它会触发该事件,但是在代码benind事件中,该列表不会保留指向该项目的指针用户刚刚取消选择.我发现这很奇怪,并且我想我必须丢失一些明显的东西,尽管各种搜索没有产生任何具体的结果.

我想我可以在检查的项目后面的代码中维护一个列表,并且每次触发该事件时,都要找出已删除的内容,但是如果有一个更简单的解决方案,这似乎有些过头了.

谢谢,
麦可

解决方法:

是的,甚至没有通过强制发送者来找到取消选中项的绝妙方法

以下是一个棘手的代码,可为您提供引起事件触发的项目索引

protected void checkboxlist_SelectedIndexChanged(object sender, EventArgs e)
{
        CheckBoxList list = (CheckBoxList)sender;
        string[] control = Request.Form.Get("__EVENTTARGET").Split('$');
        int idx = control.Length - 1;
        string sel = list.Items[Int32.Parse(control[idx])].Value;  
}

获得索引后,您可以选择项目并编写代码.


【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!

相关教程推荐

其他课程推荐