码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2016-10-25 14:13:50      阅读:169      评论:0      收藏:0      [点我收藏+]

标签:man   controls   clear   blocks   bst   count   rom   hash   设置   

封装类

技术分享
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; }
    }
}
View Code

 

建立方法

技术分享
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;
    
    }





}
View Code

 

设定样式

技术分享
<%@ 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 = 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>
View Code

 

设置功能  属性里的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();

          
        }
    }
}
View Code

 

纯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>
View Code

 

完!!

 

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

标签:man   controls   clear   blocks   bst   count   rom   hash   设置   

原文地址:http://www.cnblogs.com/wwz-wwz/p/5996256.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!