asp.net - Ajax ConfirmButtonExtender 在 OnClientClick javascript 代码之前触发

标签 asp.net javascript visual-studio ajax visual-studio-2008

我使用的是 aspnet 3.5,对比 2008,ajax 2.0,普通的旧 javascript(不使用任何 javascript 框架)。

在 asp:listview 中我有一个带有 OnClientClick= "turnrowpink(this);"的按钮(删除)

我还有一个用于此按钮的 ajax 2.0 confirmbuttonextender(您确定要删除此记录吗?)

turnrowpink 函数用于在您确定之前运行吗?信息。

以前是什么时候确定?会弹出,您单击要删除的行显示为粉红色,以明确您要删除的行。

我已经添加了很多完全不相关的 javascript 函数,现在上面的代码以相反的顺序触发:

你确定吗?第一次确认,然后 ok,调用 turnrowpink。那时运行 turnrowpink 有点傻。雪上加霜的是,我在 turnrowpink 上遇到了一个 javascript 错误,因为参数 (this) 似乎此时已设置为其他内容。

那么,我如何强制 turnrowpink 先开火?

我意识到事情是异步完成的,但它曾经有效。

代码如下:

这是在 ListView 项模板中:

<td>
   <asp:ImageButton ID="ImageButtonDel" 
   runat="server" OnClientClick="TurnRowPink(this);"
   ImageUrl="~/delete.GIF" CommandName="DeleteRecord" 
   CommandArgument='<%# Eval("tt_Pkey") %>' />
</td>

这是 ConfirmButtonExtender,也在 ListView 项模板中:

<cc1:ConfirmButtonExtender ID="ConfirmButtonExtender1" 
 ConfirmText="Are you sure you want to delete this record?"  
   runat="server" TargetControlID="ImageButtonDel">
</cc1:ConfirmButtonExtender>

最佳答案

我有这个问题,问题是扩展器覆盖了你的 onclick 函数而不是链接它(jQuery 我们爱你)。我像这样破解它:

<asp:ImageButton ID="ImageButtonDel" 
   runat="server" onmousedown="TurnRowPink(this);"
   ImageUrl="~/delete.GIF" CommandName="DeleteRecord" 
   CommandArgument='<%# Eval("tt_Pkey") %>' />

关于asp.net - Ajax ConfirmButtonExtender 在 OnClientClick javascript 代码之前触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1215082/

相关文章:

c++ - VS2013 : fatal error C1001: An internal error has occurred in the compiler

c# - 将 SQL Server 数据从 c# 显示到 html 页面

javascript - 检查服务器端 div 是否可见

javascript - AJAX:如何使用返回的数组?

javascript - 如何在 Node.js 上使用 JS 库?

c# - 将 razor (cshtml) 和 c# 项目添加到 Visual Studio vb 网站是否错误?

visual-studio - 此 Azure 部署错误是什么意思?

java - javascript 内容占位符问题中的第二个 css

c# - 为什么 Response.Redirect 不重定向外部 URL?

javascript - 将 onclick 操作添加到 mathml