DataGrid,GridView和DetailsView中添加删除确认提示
Posted on 2006-03-21 13:38 磊 阅读(1546) 评论(8) 编辑 收藏 收藏至365Key 所属分类: DotNet
本文主要写如何在dotnet的DataGrid(1.0),GridView(2.0)和DetailsView(2.0)中添加删除确认提示。
先说1.0的DataGrid,添加DataGrid的ItemDataBound事件并添加以下类似代码
注意: " SName "确认中要添加确认数据的列名,此例中用的是ImageButton其它按钮与此类似。
再说2.0的GridView,添加GridView的RowDataBound事件并添加以下类似代码
注意:Cells[10]为删除按钮所在的列,删除按钮要在一个单独的列中,可以转化为模板列。
最后说DetailsView,直接利用.Net控件的OnClientClick如下:
好啦,到此结束。
先说1.0的DataGrid,添加DataGrid的ItemDataBound事件并添加以下类似代码
<
asp:TemplateColumn HeaderText
=
"
删除
"
>
< ItemTemplate >
< asp:ImageButton ID = " delete " Runat = " server " CommandName = " DelInfo " ImageAlign = " Middle " ImageUrl = " Images/btn_del.gif " ></ asp:ImageButton >
</ ItemTemplate >
</ asp:TemplateColumn >
< ItemTemplate >
< asp:ImageButton ID = " delete " Runat = " server " CommandName = " DelInfo " ImageAlign = " Middle " ImageUrl = " Images/btn_del.gif " ></ asp:ImageButton >
</ ItemTemplate >
</ asp:TemplateColumn >
DataGrid_ItemDataBound
private void DataGrid_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if (e.Item.ItemType==ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem)
{
DataRowView drv=(DataRowView)e.Item.DataItem;
ImageButton l=(ImageButton)e.Item.Cells[4].FindControl("delete");
l.Attributes.Add("onclick","javascript:return confirm('你确认要删除"+drv.Row["SName"].ToString()+"吗?')");
}
}
private void DataGrid_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if (e.Item.ItemType==ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem)
{
DataRowView drv=(DataRowView)e.Item.DataItem;
ImageButton l=(ImageButton)e.Item.Cells[4].FindControl("delete");
l.Attributes.Add("onclick","javascript:return confirm('你确认要删除"+drv.Row["SName"].ToString()+"吗?')");
}
}
注意: " SName "确认中要添加确认数据的列名,此例中用的是ImageButton其它按钮与此类似。
再说2.0的GridView,添加GridView的RowDataBound事件并添加以下类似代码
<
asp:CommandField ShowDeleteButton
=
"
True
"
/>
protected
void
GridView1_RowDataBound(
object
sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
e.Row.Cells[10].Attributes.Add("onclick", "javascript:return confirm('你确认要删除/"" + e.Row.Cells[1].Text + "/"吗?')");
}
{
if (e.Row.RowType == DataControlRowType.DataRow)
e.Row.Cells[10].Attributes.Add("onclick", "javascript:return confirm('你确认要删除/"" + e.Row.Cells[1].Text + "/"吗?')");
}
注意:Cells[10]为删除按钮所在的列,删除按钮要在一个单独的列中,可以转化为模板列。
最后说DetailsView,直接利用.Net控件的OnClientClick如下:
<
asp:TemplateField ShowHeader
=
"
False
"
>
< ItemTemplate >
< asp:LinkButton ID = " LinkButton1 " runat = " server " OnClientClick = " javascript:return confirm('你确认要删除吗?') " CausesValidation = " False " CommandName = " Delete "
Text = " 删除 " ></ asp:LinkButton >
</ ItemTemplate >
</ asp:TemplateField >
< ItemTemplate >
< asp:LinkButton ID = " LinkButton1 " runat = " server " OnClientClick = " javascript:return confirm('你确认要删除吗?') " CausesValidation = " False " CommandName = " Delete "
Text = " 删除 " ></ asp:LinkButton >
</ ItemTemplate >
</ asp:TemplateField >
好啦,到此结束。