zoukankan      html  css  js  c++  java
  • 如何在repeater中找到checkbox并实现全选删除

    checkbox使用客户端控件,且给repeater里边的checkbox添加ruanat=server属性
    表头中的chkTotal的属性一定不要加此属性。。。。
    然后 全选的javascript代码
        function CheckAll()
      {
       var e=document.aspnetForm.elements;
       var o;
       for(var i=0;i<e.length;i++)
       {
        o = e;    
        if(o.type=="checkbox"&o.id!="chkTotal")
        {
         o.checked = document.getElementById("chkTotal").checked;          
        }  }  }
    之后判定是否有选择项,如果没有提示!
    function SelectOne()
      {
          var e=document.aspnetForm.elements;
       var o;
       var anyonechecked = false;
       for(var i=0;i<e.length;i++)
       {
        o = e;
        if(o.type=="checkbox"& o.checked==true &o.id!="chkTotal")
           {
               anyonechecked = true;
               break;
           }
          }
          if(!anyonechecked)
       {
           alert("必须选择一个项目!");
       } }
    在 删除的按钮加上客户端控件事件 
    后台的删除事件。。。注意  绑定数据时候将主键(要删除时候的唯一索引作为隐藏项放在reperter中)
    protected void btnDelete_Click(object sender, EventArgs e)
        {
            for (int i = 0; i < rptMessList.Items.Count; i++)
            {
                if (((HtmlInputCheckBox)this.rptMessList.Items.FindControl("chkOne")).Checked == true)
                {
                    int k = Ucar.Common.ConvertHelper.GetInteger((rptMessList.Items.FindControl("hfid") as HiddenField).Value);
                    BOMessageDS BOMessmodel = BOMessage.GetModel(k);
                    if (BOMessmodel != null)
                    {
                        BOMessmodel.IsPublisherActive = 0;
                        BOMessage.Update(BOMessmodel);
                        Ucar.Common.ScriptHelper.ShowAlertScript(this.Page, "删除成功!");
                    }
                }
            }
    我后边的删除是逻辑删除,置换状态,大家可以直接删除就可以  谢谢欣赏!
            DataBind();
        }

    <script language="javascript"> 
    <!-- 

    function CA(frm) 

    var trk=0; 
    for (var i=0;i<frm.elements.length;i++) 

    var e=frm.elements
    if ((e.name != 'allbox') && (e.type=='checkbox') && (e.name != '不想被选中的checkbox的名称')) 

    trk++; 
    e.checked=frm.allbox.checked; 
    frm.del.disabled = frm.allbox.checked?false:true;//全选对删除按钮的disabled属性的影响 




    function CCA(frm,CB) 

    var TB=TO=0; 
    for (var i=0;i<frm.elements.length;i++) 

    var e=frm.elements; 
    if ((e.name != 'allbox') && (e.type=='checkbox') && (e.name != '不想被选中的checkbox的名称')) 

    TB++; 
    if (e.checked) 
    TO++; 


    frm.allbox.checked=(TO==TB)?true:false; 

    if (0==TO)//全部未选中和选中一些时对删除按钮的disabled属性的影响 

    frm.del.disabled = true; 

    else 

    frm.del.disabled = false; 



    --> 
    </script> 


    调用方法: 
    全选的名称定为allbox,onclick
    事件执行CA(this.form); 
    选择项的checbox的onclick事件执行CCA(this.form,this);

  • 相关阅读:
    4-1 R语言函数 lapply
    3-6 向量化操作
    3-5 处理缺失值
    3-4 列表的子集
    3-3 数据框的子集
    3-2 矩阵的子集
    bootstrap 模式对话框
    手机端 超链接 识别电话号码
    jQuery设置和获取HTML、文本和值
    TP 框架 ajax[利用异步提交表单]
  • 原文地址:https://www.cnblogs.com/azzhang/p/4231856.html
Copyright © 2011-2022 走看看