JQuery-在Asp.Net中调用客户端的服务器端事件

JQuery - Call server side event in client side in Asp.Net

本文关键字:客户端 服务器端 事件 调用 Asp Net JQuery-      更新时间:2023-09-26

我有两个类似的按钮

<asp:Button ID="btnSave" runat="server" Text="Save" ValidationGroup="vgSave" CssClass="submit3"
                        Width="100px" Height="38px" OnClientClick="raiseEvent()" />
    <asp:Button ID="btnTemp" runat="server" OnClick="btnSave_Click" CssClass="hidden"/>

我想使用如下所示的javascript调用btnTempOnClick

<script type="text/javascript">
        function raiseEvent() {
            $('#<%= btnTemp.ClientID %>').click();
        }
    </script>

但它对我不起作用。但当我在document.ready()上调用它(只是为了测试)时,它起作用了,请参阅代码

$(document).ready(function () {
            $('#<%= btnTemp.ClientID %>').click();
        });

我在这里做错了什么?

我认为当你点击btnSave按钮时,会调用你的函数"raiseEvent",但你的btnSaveasp按钮,它会转换为HTML提交按钮,所以当你点击按钮时,它会将表单发布到服务器,所以页面不能等到btnTemp点击。。

如果你想停止通过btnsave回发,点击你的功能必须是return false

<asp:Button ID="btnSave" runat="server" Text="Save" ValidationGroup="vgSave" CssClass="submit3"
                        Width="100px" Height="38px" OnClientClick="return raiseEvent()" />
<script>
                function raiseEvent() {
                    $('#<%= btnTemp.ClientID %>').click();
                    return false;
                }
</script>