repeater 中checkbox全选问题

问题描述

前几天,发了个同样的问题,暂时解决了,可以实现选中删除,但是现在的问题是:明明全部选定了,执行删除的时候,只删除第一行的值,下面的checkbox值变成false了

<ItemTemplate><tr><tdalign="center"><asp:CheckBoxID="cb_id"CssClass="checkall"runat="server"/></td><tdalign="center"><asp:LabelID="lb_id"runat="server"Text='<%#Eval("Nid")%>'></asp:Label></td></ItemTemplate>repeater外的代码<asp:LinkButtonID="lbtnDel"runat="server"OnClientClick="returnconfirm('确定要删除这些记录吗?');"OnClick="lbtnDel_Click">删除</asp:LinkButton>

protectedvoidlbtnDel_Click(objectsender,EventArgse){for(inti=0;i<this.rptList.Items.Count;i++){CheckBoxcb=(CheckBox)rptList.Items[i].FindControl("cb_id");intid=Convert.ToInt32(((Label)rptList.Items[i].FindControl("lb_id")).Text);if(cb.Checked){stringstr="deletefromT_NewswhereNid="+id;DbHelper.NoResultCommand(str);PageCountBind(1,drNewsCatList.SelectedValue);}}}点击删除的时候,只删除第一行的值,下面的checkbox值就全部是false了,现在都不想用全选删除了

解决方案

解决方案二:
补充一点:把linkbutton里的代码改成下面的样子protectedvoidlbtnDel_Click(objectsender,EventArgse){for(inti=0;i<this.rptList.Items.Count;i++){CheckBoxcb=(CheckBox)rptList.Items[i].FindControl("cb_id");intid=Convert.ToInt32(((Label)rptList.Items[i].FindControl("lb_id")).Text);if(cb.Checked){Response.Write(id);//stringstr="deletefromT_NewswhereNid="+id;//DbHelper.NoResultCommand(str);//PageCountBind(1,drNewsCatList.SelectedValue);}}}然后当页的全部id就可以循环输出,删除的时候就只删除第一行
解决方案三:
绑定Repeater的代码是否放在if(!IsPostBack){绑定Repeater代码}中
解决方案四:
准备结贴,自己解决了,原因是在for循环里执行了PageCountBind(1,drNewsCatList.SelectedValue),页面刷新了,checkbox的值就被重新赋值了,吧刷新页面放到for循环外面就可以实现了
解决方案五:
引用2楼的回复:

绑定Repeater的代码是否放在if(!IsPostBack){绑定Repeater代码}中

谢谢你的回答,自己解决了,谢谢

时间: 2024-09-19 02:24:16

repeater 中checkbox全选问题的相关文章

javascript中CheckBox全选终极方案

  在javascript页面中实现CheckBox或者Radio的选中状态是一件很容易的事情,下面我们来给大家展示下在asp.net中使用javascript中CheckBox全选终极方案,有需要的小伙伴可以参考下. 在我们的程序开发中经常会要用到CheckBox的全选,通常情况下是在一些数据绑定控件中如Gridview等 下面以Repeater为例,在Repeater的header 和item中放入CheckBox控件 . ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14

javascript中CheckBox全选终极方案_javascript技巧

在我们的程序开发中经常会要用到CheckBox的全选,通常情况下是在一些数据绑定控件中如Gridview等 下面以Repeater为例,在Repeater的header 和item中放入CheckBox控件 . <asp:Repeater ID="rptGroup" runat="server"> <HeaderTemplate> <table width="100%" cellspacing="1&quo

jquery中checkbox全选失效的解决方法_jquery

如果你使用jQuery 1.6 ,代码if ( $(elem).attr("checked") ),将获得一个属性(attribute) ,它不改变该复选框被选中和选中.它只是用来存储默认或选中属性的初始值.为了保持向后兼容,.attr() 方法从 jQuery 1.6.1+ 开始除了返回属性值外,还会更新 property 属性,因此 boolean attribute(布尔属性)不需要通过 .prop() 来改变其值.推荐使用上述方法之一,来取得 checked 的值. 使用jQu

新手学JavaScript(四)----CheckBox全选与全不选

    前两天开发界面时,实现了一个新的小功能,CheckBox复选框的全选与全不选 样式的实现 纯CSS实现 VS JQuery+CSS实现     在这给大家推荐一款比较不错的纯CSS实现的CheckBox–CSSCheckBox,用bootstrap里面自带的checkbox和radio样式不太美观,所以就另找了一个插件,这里大家可能会有疑问,为什么要找一个纯CSS实现的CheckBox?     在这里给大家解释一下,如果说你找的Checkbox是用CSS+Javascript实现的话,

实现checkbox全选、反选、取消JavaScript小脚本异常_javascript技巧

今天在实现checkbox全选,反选,取消JavaScript小脚本的时候,总是出现点击后页面瞬间刷新,选择的checkbox全部取消的问题,debug了半天,才发现原来是<button>标签中少写了一个type属性的原因,郁闷啊,希望自己以后少犯这种特别2的错误,特此记录. 复制代码 代码如下: <!-- 以下为错误写法 --> <button name="checkAll" value="全选" class="checkB

listview 里面checkbox全选问题 纯新手求教!!

问题描述 listview 里面checkbox全选问题 纯新手求教!! 解决方案 http://blog.sina.com.cn/s/blog_b37dcd970101dp3e.html 解决方案二: Repeater/CheckBox 全选问题

javascritp checkbox全选反选代码

javascritp checkbox全选反选代码 //全选与反选 <script type="text/网页特效"> var checkflag = "false"; function check(field) {      if (checkflag == "false")      {            for (i = 0; i < field.length; i++)            {           

利用jQuery实现CheckBox全选/全不选/反选的简单代码_jquery

jQuery有些版本中实现CheckBox全选/全不选/反选会有bug,经测试jquery-1.3.1.js–>测试通过,jquery-1.5.1.js–>测试不通过. 实现CheckBox全选/全不选/反选代码如下: <%@ page language="java" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional

初学Jquery,自己想做个在Repater里checkbox全选,但是不知道怎么xie

问题描述 初学Jquery,自己想做个在Repater里checkbox全选,但是不知道怎么xie <asp:Repeater ID="repList" runat="server"> <HeaderTemplate> <table> <tr align="center"> <td ><asp:CheckBox ID="CheckBox1" name="