我在Asp.net应用程序中有一个GridView
控件,该控件具有<asp:buttonField>
和type="image"
的CommandName="Delete"
。
有什么办法可以在到达OnRowDelete
事件之前执行一段JavaScript?
在删除行之前,我只需要一个简单的确认。
谢谢!
编辑:请注意,<asp:ButtonField>
标记没有和OnClientClick
属性。
最佳答案
我将改为使用TemplateField,并根据需要的内容使用常规的asp:Button或asp:ImageButton填充ItemTemplate。然后,您可以执行与RowCommand事件截获Delete命令时将要执行的逻辑相同的逻辑。
然后,在这两个按钮中的任何一个上,我都将使用OnClientClick属性在此之前执行JavaScript确认对话框。
<script type="text/javascript">
function confirmDelete()
{
return confirm("Are you sure you want to delete this?");
}
</script>
...
<asp:TemplateField>
<ItemTemplate>
<asp:ImageButton ID="DeleteButton" runat="server"
ImageUrl="..." AlternateText="Delete" ToolTip="Delete"
CommandName="Delete" CommandArgument='<%# Eval("ID") %>'
OnClientClick="return confirmDelete();" />
</ItemTemplate>
</asp:TemplateField>