怎样jsp实现返回之前的页面

来源:百度知道 编辑:UC知道 时间:2024/05/24 20:04:53
我现在做了一个页面A.jsp,然后我在A.jsp(此时A.jsp的表单是空的)上面做了一个按钮b执行了某些数据操作,这个按钮执行的是B.do,B.do返回的还是这个A.jsp(A.jsp的表单有了数据),还有第二个按钮C,C执行的是C.do,现在我让C.do执行的时候发生某些异常转到error.jsp页
我想在error.jsp上做一个返回的连接,返回到A.jsp(回到最初的A.jsp),但是我用js的history.go(-1)或者history.back的话就会提示网页过期什么的,我如果用request.getHeader("referer")来获得地址的话,获得的是..../xx.do
而这事点击 就会抛出异常,请问怎样实现回到最初的A.jsp,我的打算是把所有的异常都跑到这个error.jsp页,然后点击返回时 回到 出错的那个页面,请高人知道

request.getHeader("referer");这样写对于xx.do这些东西确实不好用,而且,它知道获取到本页的上一层连接.

lz的问题我以前是这样搞的,因为你的所有操作都是从A.jsp发起的,经过了几步最后是从error.jsp返回到A.jsp. 建议是开始操作的时候,在session中存入一个值 比如说 links="A.jsp", 最后从error.jsp返回的时候,从links取到值返回,同时删掉session中的links值. 如果还想要A.jsp中保留数据,session就得存更多参数了,error.jsp还得做处理取值然后扔给A.jsp再返回..

这是我以前采用的一些思路, 另外也是为了解决history.back()返回的时候,有时候可能陷入循环, 比如从A 到 B 从B C, 然后C又到B,, 每个页面都用history.back()返回,就会发现在BC之间来回跳,永远返回不到A了.

另外一种方法是,从A.jsp开始操作,就把"A.jsp"这个参数放入隐藏域中,作为参数提交,其余所有的操作都要保留这个参数,最后到error.jsp也能获取到这个参数,好让从error.jsp能返回到正确页面..

<a href="#" onclick="history.back()">返回上一页</a>

随便哪个页面进来的都可以退回去,刚用到这个!

用session存个lastpage,值是最后一次能正常访问的页面地址,当然,error.jsp例外,要不然就返回到error.jsp了!!