注意,是要在前台代码中实现这个 "询问用户是否删除"的功能,
只有当用户选择“确定删除后”才触发后台代码。前台代码 <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>
后台代码如下 protected void gv_OrderInfo_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
//我的要求是前台询问用户是否删除,当选择“确定删除”之后才触发此方法
}
只有当用户选择“确定删除后”才触发后台代码。前台代码 <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>
后台代码如下 protected void gv_OrderInfo_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
//我的要求是前台询问用户是否删除,当选择“确定删除”之后才触发此方法
}
<Columns>
<asp:TemplateField Header="删除">
<asp:Button ID="btnDelete" runat="server" CommandName="Delete" OnCommand="btnDelete_Command" CommandArguments="<%#Eval("ID")%>" OnClientClick="return confirm('确定要删除嘛?');"/>
</asp:TemplateField>
</Columns>
</asp:GridView>public void btnDelete_Command(object sender,CommandEventArgs e)
{
string id= e.CommandArguments.ToString();
string strSQL = "delete from TT where ID="+int.Parse(id);
//执行删除逻辑即可
}
{
if (e.Row.RowType == DataControlRowType.DataRow)//(RowType是对象的行类型)这是判断绑定的,只有DataControlRowType.DataRow行能绑定数据
{
((Button)(e.Row.Cells[4].Controls[0])).Attributes.Add("onclick","return confirm('确定要删除吗? ')");
}
}
警告 2 验证(ASP.Net): 特性“Header”不是元素“TemplateField”的有效特性。
警告 3 元素“Button”不是已知元素。原因可能是网站中存在编译错误,或者缺少 这怎么个情况呀???
CommandArgument='<%#Eval("ID")%>'可能是我先前拼写上有些问题,修正一下
<%@ Register assembly="AspNetPager" namespace="Wuqi.Webdiyer" tagprefix="webdiyer" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolder2" runat="server" >
UID:<asp:Label ID="lb_UID" runat="server" Text="名字" ForeColor="Red"></asp:Label>
Role:<asp:Label ID="lb_Role" runat="server" Text="角色"></asp:Label>
<br />
<asp:Button ID="btn_NewOrder" runat="server" OnClick="btn_NewOrder_Click"
Text="新增" />
<br />
<br /> <asp:GridView ID="gv_OrderInfo" runat="server"
OnSelectedIndexChanged="gv_OrderInfo_SelectedIndexChanged"
AutoGenerateColumns="False" OnRowEditing="gv_OrderInfo_RowEditing"
OnRowDeleting="gv_OrderInfo_RowDeleting">
<Columns>
<asp:ButtonField CommandName="Select" Text="查看" >
<ControlStyle ForeColor="Blue" />
<ItemStyle Width="30px"></ItemStyle>
</asp:ButtonField> <asp:BoundField DataField="状态" HeaderText="状态" ReadOnly="True">
<ItemStyle Width="85px"></ItemStyle>
</asp:BoundField> <asp:BoundField DataField="医院" HeaderText="医院" ReadOnly="True">
<ItemStyle Width="75px"></ItemStyle>
</asp:BoundField>
<asp:ButtonField CommandName="Edit" Text="修改" >
<ControlStyle ForeColor="Blue" />
<ItemStyle Width="30px"></ItemStyle>
</asp:ButtonField> <asp:TemplateField Header="删除">
<asp:Button ID="btnDelete" runat="server" CommandName="Delete" OnCommand="btnDelete_Command" CommandArguments="<%#Eval("ID")%>" OnClientClick="return confirm('确定要删除嘛?');"/>
</asp:TemplateField>
</Columns> </asp:GridView> <br /> <webdiyer:AspNetPager ID="AspNetPager1" runat="server"
onpagechanged="AspNetPager1_PageChanged"
CurrentPageButtonClass="" FirstPageText="首页" LastPageText="尾页"
NextPageText="后页" PrevPageText="前页" PageSize="18" AlwaysShow="True" CustomInfoHTML="第<font color='red'><b>%currentPageIndex%</b></font>页,共%PageCount%页,每页显示%PageSize%条记录" PageIndexBoxType="DropDownList"
ShowCustomInfoSection="Left" ShowPageIndexBox="Auto" Font-Size="11pt"
Wrap="False">
</webdiyer:AspNetPager> <br /> <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
<br />
<asp:Label ID="Label2" runat="server" Text="Label"></asp:Label>
<br />
<asp:Label ID="Label3" runat="server" Text="Label"></asp:Label>
</asp:Content>
<Columns>
<asp:TemplateField HeaderText="删除">
<ItemTemplate>
<asp:Button ID="btnDelete" runat="server" CommandName="Delete" OnCommand="btnDelete_Command" CommandArgument="<%#Eval("ID")%>" OnClientClick="return confirm('确定要删除嘛?');"/>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:TemplateField HeaderText="删除">
<ItemTemplate>
<asp:Button ID="btnDelete" runat="server" CommandName="Delete" OnCommand="btnDelete_Command" CommandArgument="<%#Eval("ID")%>" OnClientClick="return confirm('确定要删除嘛?');"/>
</ItemTemplate>
</asp:TemplateField>红色部分的ID,你的表中有这个主键字段吧?这个是你实际要删除的数据表某一行对应的编号
<asp:TemplateField HeaderText="删除">
<ItemTemplate>
<asp:Button ID="btnDelete" runat="server" CommandName="Delete" OnCommand="btnDelete_Command" CommandArgument='<%#Eval("ID")%>' OnClientClick="return confirm('确定要删除嘛?');"/>
</ItemTemplate>
</asp:TemplateField>
警告 1 元素“Button”不是已知元素。原因可能是网站中存在编译错误,或者缺少 web.config 文件。
PS:警告虽然无所谓,但是设计界面显示的控件已经毁掉了 看着不舒服
PS:每一行的主键是在后台绑定的。。-> gv_OrderInfo.DataKeyNames = new string[] { "GUID", "ComeGUID", "PatientGUID" };//设置键
<ItemTemplate>
<asp:LinkButton ID="btnDelete" runat="server" Text="删除" CommandArgument='<%#Eval("ID") %>'
CausesValidation="False" OnCommand="btnDelete_Command" OnClientClick="return confirm('确定要删除嘛?');"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
行 92: <ItemTemplate>
行 93: <asp:Button ID="btnDelete" runat="server" CommandName="Delete" OnCommand="btnDelete_Command" CommandArgument='<%#Eval("ID")%>' OnClientClick="return confirm('确定要删除嘛?');"/>行 94: </ItemTemplate>
行 95: </asp:TemplateField>
<ItemTemplate>
<asp:LinkButton ID="btnDelete" runat="server" Text="删除" CommandArgument='<%#Eval("GUID") %>'
CausesValidation="False" OnCommand="btnDelete_Command" OnClientClick="return confirm('确定要删除嘛?');"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
public void btnDelete_Command(object sender,CommandEventArgs e)
{
string id= e.CommandArguments.ToString();
string strSQL = "delete from 你的表名 where GUID="+int.Parse(id);
//执行删除逻辑即可
...
}