首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

GridView有个删除操作的列,怎样在点击“删除”前提示用户“是否删除”?该怎么解决

2012-04-19 
GridView有个删除操作的列,怎样在点击“删除”前提示用户“是否删除”?注意,是要在前台代码中实现这个 询问用

GridView有个删除操作的列,怎样在点击“删除”前提示用户“是否删除”?
注意,是要在前台代码中实现这个 "询问用户是否删除"的功能,
只有当用户选择“确定删除后”才触发后台代码。

前台代码

HTML code
 <asp:GridView ID="gv_OrderInfo" runat="server" OnRowDeleting="gv_OrderInfo_RowDeleting">        <Columns>            <asp:ButtonField CommandName="Delete" Text="删除" >            <ItemStyle Width="30px"></ItemStyle>            <ControlStyle ForeColor="Blue" />            </asp:ButtonField>        </Columns>


后台代码如下
C# code
        protected void gv_OrderInfo_RowDeleting(object sender, GridViewDeleteEventArgs e)        {           //我的要求是前台询问用户是否删除,当选择“确定删除”之后才触发此方法        }


[解决办法]


可以在gv_OrderInfo_RowDataBound事件里写
C# code
 protected void gv_OrderInfo_RowDataBound(object sender, GridViewRowEventArgs e)    {        if (e.Row.RowType == DataControlRowType.DataRow)//(RowType是对象的行类型)这是判断绑定的,只有DataControlRowType.DataRow行能绑定数据        {            ((Button)(e.Row.Cells[4].Controls[0])).Attributes.Add("onclick","return confirm('确定要删除吗? ')");        }    }
[解决办法]
需要处理一下,我的这种写法很常用啊,处理起来也方便啊
public void btnDelete_Command(object sender,CommandEventArgs e)
{
? string id= e.CommandArguments.ToString();
? string strSQL = "delete from 你的表名 where GUID="+int.Parse(id);
? //执行删除逻辑即可
? ...
}
[解决办法]
如果你想传递多个参数的话,将三个参数都写到CommandArgument中,用一定的符号分割,然后取值的时候,再按照这个符号进行分割使用即可。

参考

热点排行