asp.net中带有锚的jquery提交函数问题->;我们添加了runat=";服务器";锚定

asp.net中带有锚的jquery提交函数问题->;我们添加了runat=";服务器";锚定,jquery,asp.net,submit,anchor,Jquery,Asp.net,Submit,Anchor,我的锚代码如下所示: <a id="PaymentLink" name="PaymentLinks" runat="server" onserverclick="PaymentLink_Click" title="Payment"></a> <form id="form1" runat="server" onsubmit="alert('alibaba');return false;"> $(function ()

我的锚代码如下所示:

<a id="PaymentLink" name="PaymentLinks" runat="server"
        onserverclick="PaymentLink_Click" title="Payment"></a>
<form id="form1" runat="server" onsubmit="alert('alibaba');return false;">
            $(function () {
                $('#form1').submit(function (e) {
                    alert('alert2');
      });
});
为什么点击该锚后我们只看到阿里巴巴警报…
链接按钮也有这种方式…
但是当我们使用常规asp.net按钮时,我们将看到两个警报…
当锚被点击时,我们如何触发jquery的提交功能

出于某些原因,我需要使用服务器端锚…


提前感谢

因为锚点(HyperLinkButton)被设置为在服务器上运行,并在服务器上启动。单击,页面将被发回服务器,并且客户端$('#form1')。提交()函数不会启动。您必须决定如何处理onClick事件:服务器端还是客户端。你也可以考虑用Link按钮异步调用WebMead,然后处理客户机上的回调。< /P> < P> < /P> < P>我接受了Yuriy提到的解决方案,并把它放在jQuery插件中:./P>非常感谢你的回答,但是需要服务器和客户端代码,此外,我还用Error=FALSE来禁用回发;在表单元素中。因此这里没有回发(…并且您的客户端$('#form1').submit()函数没有被激发)。如果你是对的,那么常规按钮呢。在常规按钮中,我们可以有服务器端和客户端代码,它是一个服务器端控件。。。关于asp.net中的常规按钮,一切都没问题,但是这个锚->我认为这个锚应该像常规asp.net按钮一样工作。知道吗?客户端$(“#form1”).submit()会在回发之前触发,并且在回发之前会显示警报,但是由于回发之后页面会刷新,因此您不会看到警报弹出窗口。另外,您在表单的提交事件中添加了returnfalse。必须将其添加到button的onclick事件中以防止回发,但如果阻止回发,则无法获得服务器端处理。查看webmethods。这是一种从客户端进行服务器调用的好方法。