gpt4 book ai didi

javascript - 如何防止 ASP :Button from posting back from a jQuery click handler

转载 作者:行者123 更新时间:2023-11-29 22:22:00 25 4
gpt4 key购买 nike

我在页面上有一个 ASP:Button。它呈现为 HTML,如下所示:

<input type="submit" name="myButton" value="Do something" 
onclick="javascript:WebForm_DoPostBackWithOptions(
new WebForm_PostBackOptions('myButton', '', true, '', '', false, false))"
id="myButton" />

现在我试图通过 jQuery 事件处理程序阻止此按钮的默认行为(提交表单):

$('#myButton').click(function () { 
// do some client-side stuff

if (someCondition) {
// don't postback!
return false;
}
});

这里的问题是 ASP 粘贴在输入上的内联点击处理程序似乎每次都在 jQuery 事件处理程序之前执行。

这里最简单的解决方案是使用普通的 input type="button" 而不是 ASP:Button,不幸的是这不可能 因为此 ASP:Button 执行此场景中所需的许多其他操作。

防止表单提交发生的最佳方法是什么?我想过使用字符串操作在元素的 onclick 属性上添加我的处理程序,但这看起来真的很脏。我还想避免使用 OnClientClick,因为这需要公开我的处理函数。有没有更好的办法?

最佳答案

您是否尝试过将 OnClientClick="return false;" 属性添加到您的 aspx 按钮控件?

不用担心,看看这篇文章,它提供了一个 javascript 事件卸载脚本:Is it possible to remove all event handlers of a given element in javascript?

我想你对最后一个方法 DomLib.prototype.removeEventsByTypeEx 感兴趣

关于javascript - 如何防止 ASP :Button from posting back from a jQuery click handler,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11891249/

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