GridView有个删除操作的列,怎样在点击“删除”前提示用户“是否删除”?该怎么解决
GridView有个删除操作的列,怎样在点击“删除”前提示用户“是否删除”?
注意,是要在前台代码中实现这个 "询问用户是否删除"的功能,
只有当用户选择“确定删除后”才触发后台代码。
前台代码
后台代码如下
------解决方案--------------------
可以在gv_OrderInfo_RowDataBound事件里写
注意,是要在前台代码中实现这个 "询问用户是否删除"的功能,
只有当用户选择“确定删除后”才触发后台代码。
前台代码
- 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中,用一定的符号分割,然后取值的时候,再按照这个符号进行分割使用即可。
参考