gpt4 book ai didi

asp.net - 在 asp.net 中回发和浏览器后退按钮问题

转载 作者:行者123 更新时间:2023-12-01 02:19:32 25 4
gpt4 key购买 nike

我正在开发网络应用程序。我有一个向用户显示数据的网格。当用户单击网格的任何一行时,它会将用户重定向到另一个页面,因为我们在 a 列上有一个 asp 链接控件。
问题

我的代码就像

if (!Page.IsPostBack)
{
//CODE
}

当用户单击 BROWSER BACK 按钮时,它不会执行 CODE。只需显示来自 CACHE 的数据。
如何执行代码,在浏览器后退按钮上单击?

最佳答案

这是 ASP.Net 的全局性问题。大多数开发人员都像 Windows 开发人员一样思考。它以大多数操作的回发结束,包括导航操作。

要解决此类问题:

  • 避免使用按钮来改变页面。生成带有目标 url 的超链接。
  • 将部分页面包装在更新面板中。好处是浏览器在每次回发后不会看到页面更改。然后您将能够“刷新”页面而不会出现警告对话框
  • 填充网格时,不是从代码隐藏中“选择”一行,而是在 url 中生成一个指向同一页面的链接,其中“?ID=42”,并将该值作为选定值
  • 绑定(bind)到网格。

    这种“邪恶”行为的根本原因是回发是使用 HTTP Post 请求发出的。然后,浏览器需要重新发布页面以重建它。

    使用上面提到的技术,您正在发出 GET 请求。这种请求不需要重新提交任何东西。

    关于asp.net - 在 asp.net 中回发和浏览器后退按钮问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21477464/

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