问题描述:我们有两个页面A和B,当我们从A跳到B后不做作任何让页面回传的操作,用JS:history.go(-1)就可以回到A页面,但是比如我们有Click,Change事件等激发了页面的回传,此时用history.go(-1)就回不到A页面了。 解决的方法:我们要想办法记录到页面回传的次数N,然后用history.go(-n),就可以回到A页面。 在B页面中放一个控件记录其回传的次数,初始值为1 复制代码 代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="WebApplication1._Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title></title> <script> function goto() { var n=document.getElementById("TextBox1").value; var n=Number(n); history.go(-n); } </script> </head> <body> <form id="form1" runat="server"> <div> <asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" /> <input id="Reset1" type="button" value="reset" onclick="goto()"/> <asp:TextBox ID="TextBox1" runat="server" ToolTip="放一个控件保存页面回传次数">1</asp:TextBox> </div> </form> </body> </html> 在B页面的CS代码如下: 复制代码 代码如下: protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { this.TextBox1.Text = "1"; } else { this.TextBox1.Text = Convert.ToString(Convert.ToInt16(this.TextBox1.Text) + 1); } } 这样子不管你从A到了B页面,在B页面中做了什么操作,页面回发了多少次,当你点击【返回】时,都可以跳回页面A了 源码下载
推荐阅读
JQuery获取各种宽度、高度(format函数)实例
复制代码 代码如下:<html xmlns="http://www.w3.org/1999/xhtml"><head> <title>获取页面宽度</title> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js" type="text/javascr>>>详细阅读
本文标题:js不能跳转到上一页面的问题解决方法
地址:http://www.17bianji.com/kaifa2/JS/22287.html
1/2 1