您的位置:首页 > 编程语言 > ASP

asp.net中GridView全选后进行批量删除

2012-09-05 17:23 323 查看
    <form id="form1" runat="server">

    <asp:Button ID="Delall" runat="server" Text="删除选中" onclick="Delall_Click" />

    <div>

        <asp:GridView ID="gvUser" runat="server"

            AutoGenerateColumns="False" DataKeyNames="UserId"

            DataSourceID="ObjectDataSourceUser" onrowdeleted="gvUser_RowDeleted"

            CellPadding="4" ForeColor="#333333" GridLines="None" AllowPaging="True"

            PageSize="3">

            <AlternatingRowStyle BackColor="White" ForeColor="#284775" />

            <Columns>
                 <asp:TemplateField>

                      <HeaderTemplate>

                            <input id="CheckAll" type="checkbox" onclick="selectAll(this);" />全选

                      </HeaderTemplate>

                      <ItemTemplate>

                            <asp:CheckBox runat="server" ID="CheckSingle" />

                      </ItemTemplate>

                      <ItemStyle Width="100px" />

                 </asp:TemplateField>

                <asp:BoundField DataField="UserId" HeaderText="UserId"

                    SortExpression="UserId" />

                <asp:BoundField DataField="UserName" HeaderText="UserName"

                    SortExpression="UserName" />

                <asp:BoundField DataField="UserPass" HeaderText="UserPass"

                    SortExpression="UserPass" />

                <asp:BoundField DataField="Role" HeaderText="Role" SortExpression="Role" />

                <asp:BoundField DataField="RegTime" HeaderText="RegTime"

                    SortExpression="RegTime" />

                <asp:BoundField DataField="LogNum" HeaderText="LogNum"

                    SortExpression="LogNum" />

                <%--<asp:CommandField  ShowEditButton="True"  />--%>

                <asp:TemplateField>

                                <EditItemTemplate>

                                    <asp:LinkButton ID="LinkButton4" runat="server" CommandName="update">更新</asp:LinkButton>

                                    <asp:LinkButton ID="LinkButton5" runat="server" CommandName="cancel">取消</asp:LinkButton>

                                </EditItemTemplate>

                                <ItemTemplate>

                                    <asp:LinkButton ID="LinkButton3" runat="server" CommandName="Edit">编辑</asp:LinkButton>

                                </ItemTemplate>

                </asp:TemplateField>

                <asp:TemplateField HeaderText="操作" ShowHeader="False">

                    <ItemTemplate>

                        <asp:LinkButton ID="lbDelete" runat="server" CausesValidation="False"

                            OnClientClick="return confirm('你确定要删除吗?')"  Text="删除" CommandName="Delete" ></asp:LinkButton>

                    </ItemTemplate>

                    <HeaderStyle ForeColor="#0033CC" />

                    <ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" />

                </asp:TemplateField>

            </Columns>

            <EditRowStyle BackColor="#999999" />

            <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />

            <HeaderStyle BackColor="Black" Font-Bold="True" ForeColor="White" />

            <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />

            <RowStyle BackColor="#F7F6F3" ForeColor="#333333" />

            <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />

            <SortedAscendingCellStyle BackColor="#E9E7E2" />

            <SortedAscendingHeaderStyle BackColor="#506C8C" />

            <SortedDescendingCellStyle BackColor="#FFFDF8" />

            <SortedDescendingHeaderStyle BackColor="#6F8DAE" />

        </asp:GridView>

        <asp:ObjectDataSource ID="ObjectDataSourceUser" runat="server"

            DataObjectTypeName="User" DeleteMethod="DeleteUser" InsertMethod="AddUser"

            SelectMethod="GetAllUsers" TypeName="UserService" UpdateMethod="ModifyUser">

        </asp:ObjectDataSource>

    </div>

    </form>

     <script type="text/javascript">
         function selectAll(obj) {

             var chkall = obj;

             State = chkall.checked;

             elem = chkall.form.elements;

             for (i = 0; i < elem.length; i++) {

                 if (elem[i].type == "checkbox" && elem[i] != chkall.id) {

                     if (elem[i].checked != State) {

                         elem[i].click();

                     }

                 }

             }

         }

</script>

    protected void Delall_Click(object sender, EventArgs e)

    {

        int intCount = this.gvUser.Rows.Count;

        for (int i = 0; i < intCount; i++)

        {

            CheckBox CheckSingle = this.gvUser.Rows[i].Cells[0].FindControl("CheckSingle") as CheckBox;

            if (CheckSingle.Checked)

            {

                UserService.DeleteUserByUserId(Convert.ToInt16(this.gvUser.DataKeys[i].Values[0]));

            }

        }

        //删除后的更新

        gvUser.DataBind();

    }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: