asp.net PageMethods 在页面不会引起 postback,但在 JavaScript 中调用它们时会引发异步 postback。可以通过以下示例来演示:
在前端页面上,将 ScriptManager 标记添加到
标记中,以定义 PageMethods:在后端页面代码中,使用 [WebMethod] 标记来定义 PageMethod 方法:
[WebMethod] public static string GetServerTime() { return DateTime.Now.ToString(); }
这个示例首先通过脚本引用 jQuery 库,然后在页面加载时自动调用 PageMethods 中的服务器时间方法。在成功回调中,弹出来自服务器的时间。如果出现错误,将弹出错误消息。
因此,可以看到 PageMethods 本身不会导致 postback,但是异步 postback 可能会发生。