邮箱性质--全选单选的操作和传值 用属性的name传值

时间:2021-01-31 06:46:24

封装类

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[].ToString();
h.Age = Convert.ToInt32(ss[]);
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[].ToString();
hh.Age = Convert.ToInt32(ss[]);
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-)*meiyeshu)+" Name from Ha) ";
cnn.Open();
SqlDataReader ss = cmd.ExecuteReader();
while (ss.Read())
{
Ha h = new Ha();
h.Name = ss[].ToString();
h.Age = Convert.ToInt32(ss[]);
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="width: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="width: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 = ;//记录没有被选择的按钮的数量
for (j in al)
{
if (al[j].checked == false)//如果没有被选中
{
count++;//数量加1
}
} if (count == )
{
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 = ; 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(, this.value.trim().length-);
} } </script>

完!!