Repeater 全选删除和分页

 

 

前台

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="benrenbao.aspx.cs" Inherits="benrenbao" %>
<%@ Register Assembly="AspNetPager" Namespace="Wuqi.Webdiyer" TagPrefix="webdiyer" %>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <style type="text/css">
*/ /* general styles */
table,td {
    font: 100% Arial, Helvetica, sans-serif;
}
 
table {
    width: 100%;
    border-collapse: collapse;
    margin: 1em 0;
}
 
th,td {
    text-align: left;
    padding: .5em;
    border: 1px solid #fff;
}
 
th {
    background: #328aa4 url(tr_back.gif) repeat-x;
    color: #fff;
}
 
td {
    background: #e5f1f4;
}
 
/* tablecloth styles */
tr.even td {
    background: #e5f1f4;
}
 
tr.odd td {
    background: #f8fbfc;
}
 
th.over,tr.even th.over,tr.odd th.over {
    background: #4a98af;
}
 
th.down,tr.even th.down,tr.odd th.down {
    background: #bce774;
}
 
th.selected,tr.even th.selected,tr.odd th.selected {
    
}
 
td.over,tr.even td.over,tr.odd td.over {
    background: #ecfbd4;
}
 
td.down,tr.even td.down,tr.odd td.down {
    background: #bce774;
    color: #fff;
}
 
td.selected,tr.even td.selected,tr.odd td.selected {
    background: #bce774;
    color: #555;
}
 
/* use this if you want to apply different styleing to empty table cells*/
td.empty,tr.odd td.empty,tr.even td.empty {
    background: #fff;
}
 
    /*网易风格*/
    .anpager .cpb {background:#1F3A87 none repeat scroll 0 0;border:1px solid #CCCCCC;color:#FFFFFF;font-weight:bold;margin:5px 4px 0 0;padding:4px 5px 0;}
    .anpager a {background:#FFFFFF none repeat scroll 0 0;border:1px solid #CCCCCC;color:#1F3A87;margin:5px 4px 0 0;padding:4px 5px 0;text-decoration:none}
    .anpager a:hover{background:#1F3A87 none repeat scroll 0 0;border:1px solid #1F3A87;color:#FFFFFF;}
</style>
<script type="text/javascript">
     function   SelectAll(box)         
     {
            for(var i=0;i <document.form1.elements.length;i++) 
            { 
                    var e=document.form1.elements[i]; 
                    if((e.type=='checkbox'))
                    {  
                       var o=e.name.lastIndexOf('cbx'); 
                       if(o!=-1) 
                       {
                          e.checked=box.checked; 
                       } 
                    }
            }
     }
</script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    
    </div>
    <asp:Repeater ID="Repeater1" runat="server">
    <HeaderTemplate>
    <table>
    <tr><th><input id= "chkHeader" type= "checkbox" onclick= "SelectAll(this)"/>全选</th><th>报到号</th><th>考生号</th><th>姓名</th><th>身份证号码</th><th>家庭地址</th><th>类别</th><th>专业</th></tr>
    </HeaderTemplate>
    <ItemTemplate>
    <tr><td align="center" ><asp:CheckBox ID="cbx" runat="server"  /></td><td><asp:Label id="lbl" Text='<%#Eval("id") %>' runat="server" ></asp:Label></td><td><%#Eval("ksh") %></td><td><%#Eval("xm") %></td><td><%#Eval("sfzh") %></td><td><%#Eval("jtdz") %></td><td><%#Eval("jhxzmc") %></td><td><%#Eval("lqzy") %></td></tr>
    </ItemTemplate>
    <FooterTemplate>
    </table>
    </FooterTemplate>
    </asp:Repeater>
    <br />
    <asp:Button ID="btnDel" runat="server" onclick="btnDel_Click" Text="批量删除" OnClientClick="return confirm('确定要删除吗?该操作不可恢复!!!')" /> 
    <br />
    <br />
    <webdiyer:AspNetPager ID="benren" runat="server" pagesize="2" 
        CssClass="anpager" onpagechanged="AspNetPager1_PageChanged"
            FirstPageText="首页" LastPageText="尾页" NextPageText="下一页" PrevPageText="上一页" 
            ShowMoreButtons="False" ShowPageIndexBox="Never" AlwaysShow="True">
        </webdiyer:AspNetPager>
    </form>
</body>
</html>

 

后台代码:

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using Wuqi.Webdiyer;
 
public partial class benrenbao : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            string username = Session["username"].ToString();
            SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["shan"].ConnectionString);
 
            conn.Open();
 
            SqlCommand count = new SqlCommand("select count(*) from do.so where baosongren = '"+username+"'", conn);
            benren.RecordCount = (int)count.ExecuteScalar();
            conn.Close();
            BindData();
        }
    }
    public void BindData()
    {
        string username = Session["username"].ToString();
        SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["shnn"].ConnectionString);
        string sql = "select * from dao where baosongren = '"+username+"' order by ID desc";//这句在大型数据中应该用:select top查询语句
        SqlDataAdapter da = new SqlDataAdapter(sql, conn);
        DataSet ds = new DataSet();
        da.Fill(ds, benren.PageSize * (benren.CurrentPageIndex - 1), benren.PageSize, "temptbl");
        DataTable dt = ds.Tables["temptbl"];
        Repeater1.DataSource = dt;
        Repeater1.DataBind();
    }
 
    protected void AspNetPager1_PageChanged(object src, EventArgs e)
    {
        //AspNetPager1.CurrentPageIndex = e.NewPageIndex;
        BindData();
    }
    protected void btnDel_Click(object sender, EventArgs e)
    {
        string delId = "";
        //先遍历取得选中项    
        for (int i = 0; i < this.Repeater1.Items.Count; i++)
        {
            CheckBox cbx = (CheckBox)Repeater1.Items[i].FindControl("cbx");
            Label lbl = (Label)Repeater1.Items[i].FindControl("lbl");
            if (cbx != null)
            {
                if (cbx.Checked)
                {
                    delId += lbl.Text + ",";
                }
            }
        }
        //去掉最后一个,    
        delId = (delId + ")").Replace(",)", "");
        //Response.Write("删除的语句是:delete news_sosuo8_ where id_news_ in(" + delId + ")");
        //自己写删除语句吧    
        SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["shann"].ConnectionString);
        SqlCommand del = new SqlCommand("delete so where id in(" + delId + ")", conn);
        conn.Open();
        int myupdate = del.ExecuteNonQuery();
        conn.Close();
        if (myupdate > 0)
        {
            Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "<script language='javascript'>alert('删除成功!');</script>");
        }
        BindData();
        
    }    
 
}

 

原文:http://www.cnblogs.com/down/archive/2010/03/30/1700654.html

你可能感兴趣的:(分页)