在Repeater里面写了一个checkbox 要怎么才能得到控件的啊?
    郁闷了得不到ID获得不了控件 批量删除就完不成啊 哪位大侠帮帮忙

解决方案 »

  1.   

    CheckBox ckb = (CheckBox)e.Item.FindControl("checkboxId")
      

  2.   

    你直接以Repeater checkbox 搜一下一大把。
    先自己解决。
      

  3.   

    if(!IsPostBack)
     BindData();
    foreach (RepeaterItem item in Repeater1.Items)
      {
      CheckBox Chk= (CheckBox)item.FindControl("chk");//通过Hiddenfiled获取ID
      if(Chk.Checked)
      {
        
      }
      }
    服务端控件要刷新
     <input type="checkbox" name='ckbName' value='<%# Container.DataItem%>' /><%# Container.DataItem%>
    </ItemTemplate>
        
      protected void btn_Click(object sender, EventArgs e)
      {
      value = Request.Form["ckbName"];} 
      

  4.   

    repeat控件里的checkbox设置:(用相同的name) 
    <input type="checkbox" name="ss" value="<%#eval("id") %>" />
    function selectedCheckBox()
    {
    var selectedId="";
    var checkboxList = document.getElementsByName("ss");
    for(var i=0;i<checkboxList.length;i++)
    {
    if(checkboxList[i].checked)
    {
    selectedId+=checkboxList[i].value;
    }
    }
    return selectedId;
    }
    用此获取要删除的所有Id,再将些传入后台,操作sql语句删除就ok啦
      

  5.   

    前面服务器的写法和js的写法都有了。就jf了
      

  6.   


        for(int i=0;i<rptItems.items.count;i++)
        {
              checkBox = (checkBox)rptItems.item[i].FindControl("ID")
        }
        基中rptItems是<asp:reapter>前台控件ID