Repeater中如何用checkbox控件又如何判断那个人checkbox被选中呢

解决方案 »

  1.   

    <asp:Repeater runat="server" ID="RP_NewList"   OnItemCommand="RP_List_ItemCommand" >
        <HeaderTemplate>
        <table align="center" bgcolor="#ffffff" border="0" cellpadding="2" cellspacing="1"
        class="border" width="98%">
        <tr class="topbg" height="25">
        
         <td width="100" style="height: 25px">
                <div align="center">
                    全选 <asp:CheckBox ID="Checkall" runat="server" onclick="javascript:selectall(this);" /></div>
            </td>
            <td width="100" style="height: 25px">
                <div align="center">
                    排序</div>
            </td>
               <td width="100" style="height: 25px">
                <div align="center">
                    类型</div>
            </td>
            <td width="200" style="height: 25px">
                <div align="center">
                    标题</div>
            </td>
            
            <td  style="height: 25px">
                <div align="center">
                    内容</div>
            </td>
            <td  style="height: 25px">
                <div align="center">
                    点击数</div>
            </td>
            <td style="height: 25px" width="150px">
                <div align="center">
                    管理操作</div>
            </td>
        </tr>
        
        </HeaderTemplate>
        <ItemTemplate>
        <tr class="tdbg" onmouseout="this.style.backgroundColor=''" onmouseover="this.style.backgroundColor='#BFDFFF'">
           
            <td>
                <div align="center">
             <asp:CheckBox ID="CheckSingle" runat="server" /><asp:Label ID="SDID" runat="server"
                 Text='<%#Eval("SD_Id") %>' Visible="false"></asp:Label>
                </div>
            </td>
            <td>
                <div align="center">
                <%#Eval("SD_Sort") %>
                </div>
            </td>
            <td>
                <div align="center">
                <%#Eval("SD_Type") %>
                </div>
            </td>
            <td>
                <div align="center">
                      <%#Eval("SD_Title")%>
                    </div></td>
            <td>
                <div align="center">
        <%#StrUnion.StrCut(Eval("SD_Content"),80)%>  </div>
            </td> 
               <td>
                <div align="center">
                      <%#Eval("SD_ClickNum")%>
                    </div></td>
            
             <td width="150px">
                <div align="center">
                     <a href="?Nid=<%#Eval("SD_Id") %>&act=mod">修改</a>
                        &nbsp;&nbsp;&nbsp;&nbsp;
                     <asp:Button ID="del" CommandName="del" CommandArgument='<%#Eval("SD_Id") %>'
                      runat="server"  OnClientClick='return confirm("确定要删除此黑板报吗(不可恢复)?");' Text="删除" ></asp:Button>
                </div>
            </td>
        </tr>
        </ItemTemplate>
       <FooterTemplate>
       </table>
       </FooterTemplate>
        </asp:Repeater>
    <script language="javascript" type="text/javascript">
      function selectall(chkcontrol)
            {
             var chkall=chkcontrol;
              State=chkall.checked;
              elem=chkall.form.elements;
               for (i=0;i<elem.length;i++)
               {
                   if(elem[i].type=="checkbox" && elem[i]!=chkall.id)
                  {
                    if(elem[i].checked!=State)
                    {
                       elem[i].click();
                    }
                }
               }
            }
            </script>
    [code=C#] protected void DelAll_Click(object sender, EventArgs e)
        {
            int count = RP_NewList.Items.Count;
            for (int i = 0; i < count; i++)
            {
                CheckBox CheckSingle = RP_NewList.Items[i].FindControl("CheckSingle") as CheckBox;
                if (CheckSingle.Checked)
                {
                    Label sdid = RP_NewList.Items[i].FindControl("SDID") as Label;
                    bll.Delete(Security.ToNum(sdid.Text));            }
            }
            Page.ClientScript.RegisterStartupScript(GetType(), "", "alert('删除完成');", true);
            ShowList();
        }
    [/code]