欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

jsp页面跳转

程序员文章站 2023-11-10 14:12:52
window.history.back(-1) window.history.back(); window.history.forward() window.history.g...

window.history.back(-1)

window.history.back();
window.history.forward()
window.history.go(-1)

javascript:history.go(-1)和javascript:history.back(-1)

go(-1): 返回上一页, 原页面表单中的内容会丢失; back(-1): 返回上一页, 原页表表单中的内容会保留.

go(-1): 返回上一页, 原页面表单中的内容会丢失; back(-1): 返回上一页, 原页表表单中的内容会保留.

后退+刷新
history.back()是会上一页
i=1
history.go(i)去指定的某页
如果是history.go(0)那就是刷新这两个属于JS代码,相当于IE的前进、后退功能。
具体的用处就要看什么时候需要这个就用上。比如用户注册时的验证是后台验证,不符合要求的时候就可以用这个,可以最大限度保证用户少重复输入数据。
例如:载入页面:
function onLoadPage(){
if(event.srcElement.tagName=="SPAN"){
oFrame=top.window.middle.frames[2];
oTxt=event.srcElement.innerText;
switch(oTxt){
case "前 进":
oFrame.history.go(1);
case "后 退":
oFrame.history.back();
case "刷 新":
oFrame.location.reload();
}
}
}



如果按钮的ID是LinkButton1
protected void Page_Load(object sender, EventArgs e)
{
int x=0;
if (ViewState["x"]!=null)
{
x=(int)ViewState["x"];
}
x++;
ViewState["x"]=x;

this.LinkButton1.Attributes.Add("onclick", "window.history.go(-"+x+"; return false");
}

public static int GetPageRequestTimes()
{
string sKey = System.Web.HttpContext.Current.Request.Url.LocalPath;
HttpCookie cookfrom = System.Web.HttpContext.Current.Response.Cookies[sKey];
string sTimes = cookfrom["count"];
if (CCConvert.IsInt32(sTimes)) return Convert.ToInt32(sTimes)+1;
else return 0;
}

public static void SetBtnBackJs(System.Web.UI.HtmlControls.HtmlInputButton btn)
{
int iTimes = ( GetPageRequestTimes()) * -1;
btn.Attributes.Add("onclick", "javascript:window.history.go(" + iTimes.ToString() + ");");
}
public static void SavePageBackInfo(System.Web.UI.Page page)
{
string sKey = page.Request.Url.LocalPath;
HttpCookie cookfrom = page.Request.Cookies[sKey];
if (cookfrom == null)
{
cookfrom = new HttpCookie(sKey);
}
string sTimes = "0";
if (page.IsPostBack)
{
sTimes = cookfrom["count"];
sTimes = (Convert.ToInt32(sTimes) + 1).ToString();
}
cookfrom["count"] = sTimes;
page.Response.Cookies.Add(cookfrom);

}