rt:
假设有两个页面:webtest.aspx,webhistory.aspx 在webtest.aspx页面里有一个链接:<a href="webhistory.aspx">webhistory</a>
在webhistory.aspx也有一个链接:<a href="window.history.go(-1);">history back</a> 1.点击webtest.aspx页面的webhistory链接到webhistory.aspx,
2.点击webhistory.aspx页面的history back返回到webtest.aspx 3.当使用history bakc返回到webtest.aspx时,如何在webtest.aspx获取到前一个页面的url:webhistory.aspx
使用:Request.UrlReferrer;无法获取
寻求合理的解决方案!
假设有两个页面:webtest.aspx,webhistory.aspx 在webtest.aspx页面里有一个链接:<a href="webhistory.aspx">webhistory</a>
在webhistory.aspx也有一个链接:<a href="window.history.go(-1);">history back</a> 1.点击webtest.aspx页面的webhistory链接到webhistory.aspx,
2.点击webhistory.aspx页面的history back返回到webtest.aspx 3.当使用history bakc返回到webtest.aspx时,如何在webtest.aspx获取到前一个页面的url:webhistory.aspx
使用:Request.UrlReferrer;无法获取
寻求合理的解决方案!
<a href="window.history.go(-1);">history back</a>
<!--这里直接写链接能满足你的业务需求吗?
用history.go(-1)是肯定不会有Request.UrlReferrer的,
这个只是浏览器的本地行为,就算你不连互联网,都可以后退
-->
返回是用request.QueryString("url") 获取
这样是可以,但返回webtest.aspx页面时,填写的查询值会丢失,因为查询栏位都是动态生成的html控件,所以返回查询值会丢失,列表会出现无资料的现象
1.webtest.aspx直接写链接,回来时重新查询数据(需要把查询的参数放到里面),这种方式在做后台页面比较有效,假如有A B C三个页面,从A->B->C ,A B页面都有状态,如果你想从C返回到A或者从C返回B并且恢复之前的状态,可以利用这种方法(实现细节未列出)2.在webhistory.aspx利用js写cookie指示是从哪个页面返回的,之后回到webtest.aspx时再把该cookie读取出来。