gpt4 book ai didi

c# - 如何取消由按下 ButtonColumn 引起的提交事件

转载 作者:行者123 更新时间:2023-11-28 16:30:01 24 4
gpt4 key购买 nike

我正在使用 ASP 数据网格,并且有一个 ButtonColumn。当按钮呈现到页面时,它是一个提交类型的输入。所以它是一个提交按钮。该按钮用于删除记录。但我想要一些 JavaScript 来确认用户想要删除记录。我遇到的问题是,即使我从确认方法返回 false,提交事件仍然会发生...

这里是将 javascript 方法分配给点击事件的服务器端代码:

Button deleteButton = e.Item.Cells[6].Controls[0] as Button;
if (deleteButton != null)
{
deleteButton.OnClientClick = "confirmDelete()";
}

下面是创建数据网格的 ASP.net 代码:

<asp:DataGrid 
runat="server"
ID="UsersList"
OnItemCommand="UsersList_ItemCommand"
AutoGenerateColumns="false"
HeaderStyle-CssClass="dataTableHeader"
Width="60%">
<Columns>
<asp:HyperLinkColumn DataNavigateUrlField="Username" DataTextField="Username" HeaderText="Username" DataNavigateUrlFormatString="~/Account/EditUser.aspx?user={0}"/>
<asp:BoundColumn DataField="Email" HeaderText="Email" />
<asp:ButtonColumn Text="Delete" HeaderText="Delete" ButtonType="PushButton" CommandName="DeleteUser" CausesValidation="false" />
</Columns>
</asp:DataGrid>

以下是确认删除的 Javscript 代码:

<script>
function confirmDelete() {
var x = confirm("This action cannot be undone. Are you sure you want to delete this user?");
return x;
}
</script>

也许没有办法用 ButtonColumn 来完成这个任务。我正在考虑更改为 TemplateColumn,并在其中放置一个按钮。但随后我将不得不重新设计在后端处理这些点击事件的代码,该事件当前在 ItemCommand 处理程序中处理。

最佳答案

尝试:

 deleteButton.OnClientClick = "return confirmDelete()";

关于c# - 如何取消由按下 ButtonColumn 引起的提交事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6418764/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com