1

我需要为我的asp.net网站实现一个后退按钮。我可以使用javascript方法来实现我的要求。但是使用这种方法有时我需要多次单击后退按钮才能返回上一页.这可能是因为我们在我们的网站上使用 jquery 选项卡。要专注于特定选项卡,除了页面加载时的第一个选项卡,我正在使用 Page.ClientScript.RegisterStartupScript(....)。所以我无法接受用户只需单击一下即可返回上一页。

我还尝试了以下链接中提到的 asp.net-C# 方法。 http://www.dotnetcurry.com/ShowArticle.aspx?ID=89 我可以回到上一页,但它的状态正在丢失。有人可以帮我实现我的要求吗?

详细信息:
我有 page1.aspx、page2.aspx(其中包含 jquery 选项卡视图/编辑)。

在 page1.aspx 中有 2 个按钮(查看、编辑)。如果我单击查看按钮,它会将我带到 page2.aspx 查看选项卡(第一个选项卡),如果我单击编辑按钮,它必须将我带到 page2。 aspx 加载了编辑选项卡。两个视图/编辑选项卡都包含后退按钮。

同样从“视图”选项卡中,我可以通过单击其中的另一个“编辑”按钮导航到“编辑”选项卡。

谢谢。

4

2 回答 2

1

您在问题中涵盖的方法本质上是您可以使用的方法。
您可以
1. 提供一个使用 javascript 使客户端返回页面的链接。
2. 提供一个链接,该链接发回将您重定向回页面的服务器。

我不确定为什么您的问题中描述的网络表单中的 jquery 会导致您单击更多次以返回。如果你知道它总是需要点击 2 次才能返回,你可以试试这个方法:

javascript: window.history.go(-2)

当您使用 postback/redirect 方法时,您将始终使用 http GET 方法来检索您返回的页面。如果要保持状态,则必须手动执行此操作,即在离开页面时保存值,例如会话或临时数据库,并在返回页面时,在页面加载期间检查用户是否有这些值保存并预填充它们。

于 2010-01-13T11:51:01.130 回答
0

我做了类似的事情(虽然有自动重定向),我必须跟踪返回到我的 ViewState 的页面数(或者如果你从一个页面跳转到另一个页面,则为 Session):

代码隐藏

public void Page_Load()
{
    Session["pagesToGoBack"] = ((int)Session["pagesToGoBack"])++;
}

加价:

<input type="button" value="Back" onclick='javascript:history.go(<%= Session["pagesToGoBack"] %>);' />

需要时小心重置会话变量

让我觉得有点脏,但它奏效了:)

于 2010-01-13T12:07:28.060 回答