关于asp.net:防止按钮单击时服务器回发

Prevent Server Postback on Button Click

我可以在按钮单击时避免 postback 吗(不要进入 page_load 方法),

尽管如此,还是直接调用处理程序。

我尝试了 html 按钮、asp buttonlink button,但没有达到我的目标。

有可能吗?


你可以使用OnClientClick。它将调用您要执行的函数(jquery 函数),然后使用 return false 来避免页面加载。在您的按钮中添加:

1
 

如果你想在没有回发的情况下调用代码隐藏函数,那么有两种方法可以做到这一点:

  • 使用更新面板。您可以阅读本教程。

  • 或使用页面方法:

  • 给你的页面添加一个静态方法,用 WebMethod 属性装饰:

    1
    2
    3
    4
    [WebMethod]
    public static void MyMethod(string Param)
    {
    }

    在您的 ScriptManager 中启用页面方法:

    1
     

    然后您可以从客户端调用它,使用 JavaScript(按钮的 OnClientClick 事件)。

    1
    PageMethods.MyMethod("value", successCallback, errorCallback);

    更多详情请阅读:http://msdn.microsoft.com/en-us/library/bb398998.aspx

    希望对你有所帮助..!


    如果您想禁用回发,请使用 javascript
    试试下面的代码

    1
     

    这样做会取消回发