封装类
using System; using System.Collections.Generic; using System.Web; /// <summary> /// Ha 的摘要说明 /// </summary> public class Ha { private string _Name; public string Name { get { return _Name; } set { _Name = value; } } private int _Age; public int Age { get { return _Age; } set { _Age = value; } } }
建立方法
using System; using System.Collections.Generic; using System.Web; using System.Data.SqlClient; using System.Collections; /// <summary> /// HaData 的摘要说明 /// </summary> public class HaData { SqlConnection cnn = null; SqlCommand cmd = null; public HaData() { cnn = new SqlConnection("server=.;database=lian;user=sa;pwd=123"); cmd = cnn.CreateCommand(); // // TODO: 在此处添加构造函数逻辑 // } public List<Ha> quan() { List<Ha> hlist = new List<Ha>(); cmd.CommandText = "select * from Ha"; cnn.Open(); SqlDataReader ss = cmd.ExecuteReader(); while (ss.Read()) { Ha h = new Ha(); h.Name = ss[0].ToString(); h.Age = Convert.ToInt32(ss[1]); hlist.Add(h); } cnn.Close(); return hlist; } public List<Ha> zuhecha(string sql, Hashtable h) { List<Ha> hlist = new List<Ha>(); cmd.CommandText = sql; cmd.Parameters.Clear(); foreach (string k in h.Keys) { cmd.Parameters.Add(k,h[k]); } cnn.Open(); SqlDataReader ss = cmd.ExecuteReader(); while (ss.Read()) { Ha hh = new Ha(); hh.Name = ss[0].ToString(); hh.Age = Convert.ToInt32(ss[1]); hlist.Add(hh); } cnn.Close(); return hlist; } public List<Ha> fenyecha(int dijiye, int meiyeshu) { List<Ha> hlist = new List<Ha>(); cmd.CommandText = "select top "+meiyeshu+" * from Ha where Name not in (select top "+((dijiye-1)*meiyeshu)+" Name from Ha) "; cnn.Open(); SqlDataReader ss = cmd.ExecuteReader(); while (ss.Read()) { Ha h = new Ha(); h.Name = ss[0].ToString(); h.Age = Convert.ToInt32(ss[1]); hlist.Add(h); } cnn.Close(); return hlist; } public bool delete(string name) { bool a = false; cmd.CommandText = "delete from Ha where Name=@a"; cmd.Parameters.Clear(); cmd.Parameters.Add("@a",name); cnn.Open(); try { cmd.ExecuteNonQuery(); a = true; } catch { } cnn.Close(); return a; } public bool insert(Ha h) { bool a = false; cmd.CommandText = "insert into Ha values(@a,@b)"; cmd.Parameters.Clear(); cmd.Parameters.Add("@a",h.Name); cmd.Parameters.Add("@b",h.Age); cnn.Open(); try { cmd.ExecuteNonQuery(); a = true; } catch { } cnn.Close(); return a; } }
设定样式
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title> </head> <body> <form id="form1" runat="server"> <asp:Repeater ID="Repeater1" runat="server"> <HeaderTemplate> <table style="50%; text-align:center"> <tr style="background-color:blue; color:white"> <td><input type="checkbox" id="quanxuan" /><label for="quanxuan" >全选</label></td> <td>姓名</td> <td>年龄</td> </tr> </HeaderTemplate> <ItemTemplate> <tr style="background-color:gray"> <td style="20%"><input type="checkbox" value="<%#Eval("Name") %>" class="danxuan" name="danxuan" />单选</td> <td><%#Eval("Name") %></td> <td><%#Eval("Age") %></td> </tr> </ItemTemplate> <FooterTemplate> </table> </FooterTemplate> </asp:Repeater> <asp:Button ID="Button1" runat="server" Text="删除" /> </form> </body> </html> <script> var al = document.getElementsByClassName("danxuan");//获取所有单选数组 document.getElementById("quanxuan").onclick = function ()//全选按钮的点击事件 { for (i in al)//I返回值是al的所有索引号 { al[i].checked = this.checked;//所有单选的选择状态=全选按钮的选择状态 } } for (i in al)//给每个“单选”添加单击事件 { al[i].onclick = function () { var count = 0;//记录没有被选择的按钮的数量 for (j in al) { if (al[j].checked == false)//如果没有被选中 { count++;//数量加1 } } if (count == 0) { document.getElementById("quanxuan").checked = true;//如果没有被选择的按钮的数量为0,全选就被选中 } else { document.getElementById("quanxuan").checked = false; } } } </script>
设置功能 属性里的name当页面刷新时,都跳name所在位置的value值。自己需要那个就用request["name"]来接受。
using System; using System.Collections.Generic; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { Ha h = new Ha(); h.Name = Request["name"];//接受html页name为“name”的value值 h.Age = Convert.ToInt32(Request["age"]);//接受html页name为“age”的value值 bool aa = new HaData().insert(h); if (aa == true) { Response.Write("<script>alert('插入成功');</script>"); } if (aa == false) { Response.Write("<script>alert('插入失败');</script>"); } Button1.Click += Button1_Click;//删除按钮的点击事件 if (!IsPostBack) { Repeater1.DataSource = new HaData().quan(); Repeater1.DataBind(); } } void Button1_Click(object sender, EventArgs e)//删除按钮的点击事件 { string a = Request["danxuan"];//接收被选中框的value值(用name值) if (a == "") { } else { string[] name = a.Split(',');//将名字分成数组 string shiname = ""; string chengname = ""; for (int i = 0; i < name.Length; i++) { bool b = new HaData().delete(name[i]); if (b) { chengname += name[i]+" "; } else { shiname = name[i] + " "; } } Response.Write("<script>alert('删除成功有" + chengname + ",删除失败的有" + shiname + "');</script>"); Repeater1.DataSource = new HaData().quan();//重新绑定数据源 Repeater1.DataBind(); } } }
纯html添加功能 (form中method为用什么方式进行提交,action为将数据提交到哪里去)
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title> </head> <body> <form action="Default.aspx" method="post">//method为用什么方式进行提交,action为将数据提交到哪里去 姓名:<input type="text" name="name" /><br /> 年龄:<input type="text" name="age" id="age" /> <input type="submit" value="提交添加" /> </form> </body> </html> <script> var age = document.getElementById("age"); age.onkeyup = function ()//限定数字 { if (isNaN(age.value.trim())) { this.value = this.value.trim().substr(0, this.value.trim().length-1); } } </script>
完!!