模拟网易邮箱实现全选,全不的功能/使用DataList实现 加入购物车,编辑,删除,更新,取消功能。/试完成Datalist使用存储过程来分页

来源:互联网 发布:林心如怎么样 知乎 编辑:程序博客网 时间:2024/05/16 06:57

1模拟网易邮箱实现全选,全不的功能(服务端和客户端)

Demo.aspx

<head runat="server">
    <title></title>
    <script type="text/javascript" >
        function chage(sender) {
            var table = document.getElementById("GridView1");
            for (var i = 1; i < table.rows.length; i++) {
                table.rows[i].cells[0].getElementsByTagName("input")[0].checked = sender.checked;
            }
        }
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <br />
        <br />
        <asp:SqlDataSource ID="SqlDataSource1" runat="server"
            ConnectionString="<%$ ConnectionStrings:studentConnectionString3 %>"
            SelectCommand="SELECT [sname], [sex], [age], [sid] FROM [student]"></asp:SqlDataSource>
        <asp:GridView ID="GridView1" runat="server" DataSourceID="SqlDataSource1">
            <Columns>
                <asp:TemplateField>
                    <HeaderTemplate>
                        <asp:CheckBox ID="CheckBox2" runat="server" AutoPostBack="True"
                            Xoncheckedchanged="CheckBox2_CheckedChanged1" />
                        <br />
                        <input id="Checkbox3" type="checkbox" Xonclick="chage(this)" />
                    </HeaderTemplate>
                    <ItemTemplate>
                        <asp:CheckBox ID="CheckBox1" runat="server" />
                    </ItemTemplate>
                </asp:TemplateField>
            </Columns>
        </asp:GridView>
        <br />
        <br />
    </div>
    </form>
</body>

Demo.aspx.cs

  protected void CheckBox2_CheckedChanged1(object sender, EventArgs e)
        {
             CheckBox ckb=  sender as CheckBox;
             foreach(GridViewRow row in this.GridView1 .Rows )
             {
                 if(row .RowType ==DataControlRowType .DataRow )
                 {
                     (row.FindControl("CheckBox1") as CheckBox).Checked = ckb.Checked;
                 }
             }

        }

2 使用DataList实现 加入购物车,编辑,删除,更新,取消功能。要求连一个产品表。

Demo.aspx

<head runat="server">
    <title></title>
    <style type="text/css">
        .style1
        {
            width: 99px;
        }
    </style>
</head>
<body>
    <form id="form1" runat="server">
    <div>
   
        <asp:DataList ID="DataList1" runat="server"
            Xoneditcommand="DataList1_EditCommand" Xonitemcommand="DataList1_ItemCommand"
            Xonupdatecommand="DataList1_UpdateCommand"
            Xondeletecommand="DataList1_DeleteCommand">
            <EditItemTemplate>
                <table style="width:100%;">
                    <tr>
                        <td class="style1">
                            姓名</td>
                        <td>
                            <asp:TextBox ID="txtname" runat="server" Text='<%# Eval("sname") %>'></asp:TextBox>
                        </td>
                    </tr>
                    <tr>
                        <td class="style1">
                            性别</td>
                        <td>
                            <asp:TextBox ID="txtsex" runat="server" Text='<%# Eval("sex") %>'></asp:TextBox>
                        </td>
                    </tr>
                    <tr>
                        <td class="style1">
                            年龄</td>
                        <td>
                            <asp:TextBox ID="txtage" runat="server" Text='<%# Eval("age") %>'></asp:TextBox>
                        </td>
                    </tr>
                    <tr>
                        <td class="style1">
                            <asp:Button ID="update" runat="server" CommandArgument='<%# Eval("sid") %>'
                                CommandName="update" Text="更新" Width="40px" />
                        </td>
                        <td>
                            <asp:Button ID="Bucancel" runat="server" CommandName="cancel" Text="取消" />
                        </td>
                    </tr>
                </table>
            </EditItemTemplate>
            <ItemTemplate>
                姓名:<asp:Label ID="Label1" runat="server" Text='<%# Eval("sname") %>'></asp:Label>
                <br />
                <br />
                年龄:<asp:Label ID="Label2" runat="server" Text='<%# Eval("age") %>'></asp:Label>
                <br />
                <br />
                性别:<asp:Label ID="Label3" runat="server" Text='<%# Eval("sex") %>'></asp:Label>
                <br />
                <br />
                <asp:Button ID="btnedit" runat="server" CommandName="edit" Height="21px"
                    Text="编辑" />
                &nbsp;<asp:Button ID="btndelete" runat="server" CommandArgument='<%# Eval("sid") %>'
                    CommandName="delete" Text="删除" />
                <br />
                <br />
                <asp:Button ID="Button1" runat="server" CommandArgument='<%# Eval("sid") %>'
                    CommandName="buy" Text="加入购物车" />
                <br />
            </ItemTemplate>
        </asp:DataList>
   
    </div>
    </form>
</body>

*****************Demo.aspx.cs

public partial class Demo : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if(!IsPostBack )
            {
               bindData();
            }
        }

        private void bindData()
        {
            string sql = "select * from student";
            DataTable dt = sqlhelp.Executedatatable(sql);
            this.DataList1.DataSource = dt;
            this.DataList1.DataBind();
        }

        protected void DataList1_ItemCommand(object source, DataListCommandEventArgs e)
        {
            if (e.CommandName == "buy")
            {
                Response.Write(e.CommandArgument .ToString ());
            }
        }
        protected void DataList1_EditCommand(object source, DataListCommandEventArgs e)
        {
            this.DataList1.EditItemIndex = e.Item.ItemIndex;
            this.bindData();

        }

        protected void DataList1_UpdateCommand(object source, DataListCommandEventArgs e)
        {
            string sql = "update student set sname=@name,sex=@sex,age=@age where sid=@sid";

            string name =(e.Item.FindControl("txtname") as TextBox).Text;
            string sex = (e.Item.FindControl("txtsex") as TextBox).Text;
            string age = (e.Item.FindControl("txtage") as TextBox).Text;
            SqlParameter[] pms = new SqlParameter[]
            {
               new SqlParameter ("@name",name ),
               new SqlParameter ("@sex",sex ),
               new SqlParameter ("@age",age ),
               new SqlParameter ("@sid",e.CommandArgument )
            };
            sqlhelp.ExcuteNonQuery(sql,pms);
        }

        protected void DataList1_CancelCommand(object source, DataListCommandEventArgs e)
        {
            this.DataList1.EditItemIndex = -1;
            this.bindData();
        }

        protected void DataList1_DeleteCommand(object source, DataListCommandEventArgs e)
        {
            string sql = "delete from student where sid=@sid" ;
            SqlParameter pm = new SqlParameter("@sid",e.CommandArgument );
            sqlhelp.ExcuteNonQuery(sql,pm);
            this.bindData();
        }
    }

原创粉丝点击