GridView自定义删除操作的具体方法
2013-09-09 00:00
761 查看
首先,我们前端的代码如下:
后端的话,由于需要弹出删除前的确认框,所以,我们需要在RowDataBound里面做点什么?同时,要想真正的删除,还需要触发RowDeleting事件,具体代码如下:
<asp:GridView ID="gridViewDxjk" CssClass="gridview" runat="server" AllowPaging="True" DataKeyNames="P_ID" AutoGenerateColumns="False" RowStyle-HorizontalAlign="Center" BorderWidth="1px" PageSize="17" onrowdeleting="gridViewDxjk_RowDeleting" OnRowDataBound="gridViewDxjk_RowDataBound" onpageindexchanging="gridViewDxjk_PageIndexChanging" > <HeaderStyle CssClass="head" /> <PagerStyle CssClass="pager" /> <RowStyle CssClass="row" /> <EditRowStyle CssClass="editrow" /> <AlternatingRowStyle CssClass="altrow" /> <EmptyDataRowStyle CssClass="empty" /> <Columns> <asp:HyperLinkField HeaderText="编辑" ControlStyle-Width="50" DataNavigateUrlFields="P_ID" DataNavigateUrlFormatString="smsModify.aspx?id={0}" Text="编辑" > <ControlStyle Width="50px"></ControlStyle></asp:HyperLinkField> <asp:CommandField ShowDeleteButton="true" DeleteText="删除" > <ControlStyle Width="50px"></ControlStyle></asp:CommandField> <asp:BoundField DataField="P_ID" HeaderText="id" SortExpression="P_ID" ItemStyle-HorizontalAlign="Center" Visible="False" > <ItemStyle HorizontalAlign="Center"></ItemStyle></asp:BoundField> <asp:BoundField DataField="P_NAME" HeaderText="名称" SortExpression="P_NAME" /> <asp:BoundField DataField="P_Type" HeaderText="通知方式" SortExpression="P_Type" ItemStyle-HorizontalAlign="Center" > <ItemStyle HorizontalAlign="Center"></ItemStyle></asp:BoundField> <asp:BoundField DataField="P_Fzr" HeaderText="姓名" SortExpression="P_Fzr" ItemStyle-HorizontalAlign="Center" > <ItemStyle HorizontalAlign="Center"></ItemStyle></asp:BoundField> <asp:BoundField DataField="P_tel" HeaderText="通知手机" SortExpression="P_tel" ItemStyle-HorizontalAlign="Center" > <ItemStyle HorizontalAlign="Center"></ItemStyle></asp:BoundField> <asp:BoundField DataField="P_jg" HeaderText="通知间隔(小时)" SortExpression="P_jg" ItemStyle-HorizontalAlign="Center" > <ItemStyle HorizontalAlign="Center"></ItemStyle></asp:BoundField> <asp:BoundField DataField="P_on" HeaderText="是否开启" SortExpression="P_on" ItemStyle-HorizontalAlign="Center" > <ItemStyle HorizontalAlign="Center"></ItemStyle></asp:BoundField> <asp:BoundField DataField="P_lasttime" HeaderText="最后发送时间" SortExpression="P_lasttime" ItemStyle-HorizontalAlign="Center" > <ItemStyle HorizontalAlign="Center"></ItemStyle></asp:BoundField> <asp:BoundField DataField="P_memo" HeaderText="备注" SortExpression="P_memo" ItemStyle-HorizontalAlign="Center" > <ItemStyle HorizontalAlign="Center"></ItemStyle></asp:BoundField> </Columns> <EmptyDataTemplate> 没有数据! </EmptyDataTemplate> <PagerTemplate> <table width="100%" class="gvPage" style="font-size:12px;"> <tr> <td style="text-align: right"> 第<asp:Label ID="lblPageIndex" runat="server" Text='<%# ((GridView)Container.Parent.Parent).PageIndex + 1 %>'></asp:Label>页 /共<asp:Label ID="lblPageCount" runat="server" Text='<%# ((GridView)Container.Parent.Parent).PageCount %>'></asp:Label>页 <asp:LinkButton ID="LinkButtonFirstPage" runat="server" CommandArgument="First" CommandName="Page" Visible="<%# ((GridView)Container.NamingContainer).PageIndex != 0 %>">首页</asp:LinkButton> <asp:LinkButton ID="LinkButtonPreviousPage" runat="server" CommandArgument="Prev" CommandName="Page" Visible="<%# ((GridView)Container.NamingContainer).PageIndex != 0 %>">上一页</asp:LinkButton> <asp:LinkButton ID="LinkButtonNextPage" runat="server" CommandArgument="Next" CommandName="Page" Visible="<%# ((GridView)Container.NamingContainer).PageIndex != ((GridView)Container.NamingContainer).PageCount - 1 %>">下一页</asp:LinkButton> <asp:LinkButton ID="LinkButtonLastPage" runat="server" CommandArgument="Last" CommandName="Page" Visible="<%# ((GridView)Container.NamingContainer).PageIndex != ((GridView)Container.NamingContainer).PageCount - 1 %>">尾页</asp:LinkButton> <asp:TextBox ID="txtNewPageIndex" runat="server" Text='<%# ((GridView)Container.Parent.Parent).PageIndex + 1 %>' Width="20px" AutoPostBack="true" ></asp:TextBox> <asp:LinkButton ID="btnGoEx" runat="server" CommandArgument="GO" CommandName="Page" Text="GO" OnClick="btnGoEx_Click"></asp:LinkButton> </td> </tr> </table> </PagerTemplate> </asp:GridView>
后端的话,由于需要弹出删除前的确认框,所以,我们需要在RowDataBound里面做点什么?同时,要想真正的删除,还需要触发RowDeleting事件,具体代码如下:
//报警删除 protected void gridViewDxjk_RowDeleting(object sender, GridViewDeleteEventArgs e) { string key = gridViewDxjk.DataKeys[e.RowIndex].Value.ToString(); bool flag = bll.Delete(Int32.Parse(key)); if (flag) NXT_WLService.App_Code.JScript.Alert("删除成功!", this); else NXT_WLService.App_Code.JScript.Alert("删除失败!", this); } protected void gridViewDxjk_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { LinkButton btn = (LinkButton)e.Row.Cells[1].Controls[0]; if (btn.Text.Equals("删除"))//刪除鈕才加提示訊息 btn.OnClientClick = "if (confirm('你确认要删除?')) javascript:__doPostBack('gridViewDxjk','Delete$" + e.Row.RowIndex.ToString() + "'); else return false;"; } }
相关文章推荐
- GridView自定义删除操作的具体方法
- GridView经典删除操作,两种方法
- 在GridView中自定义删除按钮,加入Javasript的方法
- GridView经典删除操作,两种方法
- LinqToEntities 更新、删除 的小技巧 Attach 和 域操作自定义方法
- GridView控件删除行的操作提示及自定义数据行的代码实现
- 解决ASP 2.0中GridView控件的删除、插入、编辑命令操作客户端确认问题的另一方法
- GridView自定义删除操作
- GridView操作小技巧-自定义删除按钮
- 解决ASP 2.0中GridView控件的删除、插入、编辑命令操作客户端确认问题的另一方法
- Yii 框架里数据库操作详解-[增加、查询、更新、删除的方法 'AR模式'
- 通过UICollectionView 自定义日历(Calendar)添加、编辑以及删除事件等操作
- GridView编辑删除操作
- 通知php使用自定义的session处理函数来操作session,而不使用php预置的方法
- 【protocol buffers】java解析protoBuf custom option自定义扩展文件具体方法
- dedecms的文章和栏目的自定义字段的添加、调用以及完全删除方法
- mysql新添加用户与删除用户具体操作命令
- ASPxGridView修改,删除,增加提示“不支持所指定的方法”的原因
- 使用GridView的删除对话框的两种方法