是否可以动态更改按钮发布回url属性?例如,我有3页salesListing.aspx
,orderlisting.aspx
和createDetail.aspx
。
salesListing
和orderlisting
允许用户导航到createDetail
页面。但是在createDetail.aspx
我有一个后退按钮。
后退按钮是否可以检测哪些页面导致回发?并且,当用户单击后退按钮时,后退按钮将保存记录并将其恢复到上一页?
例如 用户单击orderlisting然后单击createDetail页面。当他点击后退按钮时,后退按钮保存用户ID并将用户带回订单列表。
答案 0 :(得分:0)
您可以使用“链接”按钮,如果您使用的是母版页,则根据所在页面分配相关的导航URL。 就像你有一个链接按钮
<asp:HyperLink ID="HyperLink8" NavigateUrl="Login.aspx"
runat="server">Login</asp:HyperLink>
在后面的代码中,您可以更改其URL。
if (Session["User"] != null)
{
HyperLink8.Text = "Logout";
HyperLink8.NavigateUrl = "Logout.aspx";
}
else
{
HyperLink8.Text = "Login";
HyperLink8.NavigateUrl = "Login.aspx";
}
答案 1 :(得分:0)
我已经编写了一个项目,可以自动为您管理所有后退导航,http://navigation.codeplex.com/。
您将页面配置为状态列表。每个状态下面是可能转换到不同状态。例如,您的配置将是:
<state key="sales" page="~/salesListing.aspx">
<transition key="next" to="create"/>
</state>
<state key="order" page="~/orderListing.aspx">
<transition key="next" to="create"/>
</state>
<state key="create" page="~/createDetail.aspx"/>
然后在代码中,从salesListing转到createDetail,你写:
StateController.Navigate("Next");
要从createDetail返回salesListing,请写下:
StateController.NavigateBack(1);
如果您有兴趣或想要任何帮助,请与我们联系。
答案 2 :(得分:0)
选项只是使用javascript history
对象。
在按钮上输入代码OnClientClick="javascript: history.go(-1); return false;"
这将转到上一页。
<asp:Button id="btnClick" runat="Server" text="Back" OnClientClick="javascript: history.go(-1); return false;" />
答案 3 :(得分:0)
使用Request.UrlReferrer.ToString();
并将其存储在第一页加载中。
if( !IsPostBack )
{
ViewState["PreviousPageUrl"] = Request.UrlReferrer.ToString();
}
重定向到第2页后,如果要返回
获取ViewState["PreviousPageUrl"]
值并使用Response.Redirect(ViewState["PreviousPageUrl"].ToString())
答案 4 :(得分:0)
使用普通的html按钮并添加history.back()函数。
&lt; input type =“button”Value =“Back”onClick =“History.back();”&gt;
这适用于所有浏览器,无需服务器端代码/ Postback。
快乐编码!!!