如何在 asp:GridView 中的删除按钮上弹出删除确认框?
如果您在 GridView 中为每一行设置了一个删除按钮,那么我认为下面这种方式是最好的(也绝对是最简单的),可以弹出一个提示框询问确认。这里是完整的 aspx 代码(不需要编写代码后端):
<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:LinkButton ID="DeleteButton" runat="server"
CausesValidation="False"
CommandName="Delete"
OnClientClick='<%# Eval("Title", "return confirm(\"Delete the datasource {0}?\");") %>'
Text="delete" />
</ItemTemplate>
</asp:TemplateField>
几个注意事项:
你还可以在网格视图的RowDataBound事件中动态地为删除链接添加onclick属性。
在下面的代码中,我们有一个3列的表格,所以columnIndex = 2。此外,只有一个自动生成的按钮(删除按钮),所以autoButtonIndex = 0。如果我们有编辑按钮、保存按钮,这个索引会改变。
Private Sub GridView1_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GridView1.RowDataBound
Dim columnIndex As Integer = 2
Dim autoButtonIndex as Integer = 0
Try
If (e.Row.RowType = DataControlRowType.DataRow) Then
If (e.Row.RowState = DataControlRowState.Normal Or e.Row.RowState = DataControlRowState.Alternate) Then
Dim lnkBtn As LinkButton = CType(e.Row.Cells(columnIndex).Controls(autoButtonIndex), LinkButton)
lnkBtn.Attributes.Add("onclick", "if(!confirm('Are you sure to delete this row?'))return false;")
End If
End If
Catch ex As Exception
End Try
End Sub
不要忘记适当处理你的异常。