用的是struts2+hibernate+spring  在页面a.jsp中分页遍历数据 点某一条数据记录跳转到另一action查看详单(也是分页遍历)在详单页面中希望点击返回能返回页面a.jsp  例如从页面a.jsp中第5页打开某数据详单 点击返回能返回a.jsp第5页
  
  我想用history.go(N) 来返回 但是在返回按钮中onclick="javascript:history.go(-1);" 即报网页过期代码如下:<script type="text/javascript">
..
function goback(){
var pageN=document.getElementById("pcurrPage").value;  //取得详单分页页码 第一页为0
history.go(-1-pageN);
}
</script>
...<input type="button" value="返回 " class="buttonA" onclick="goback()">...

解决方案 »

  1.   

    之前也搜索了一下 有说是缓存被清掉了
    将页面代码
    <META HTTP-EQUIV="pragma" CONTENT="no-cache"> 
    <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate"> 
    <META HTTP-EQUIV="expires" CONTENT="0"> 
     去掉 问题依旧将post 改为 get 后 详单中无数据遍历出来
      

  2.   

    通常出现网页过期提示都是因为之前发生表单post,对于这种请求方式,浏览器会认为返回的显示内容与提交的数据有关,除非你再次提交数据,否则无法显示。而如果改用get方式提交数据,在IE中,会默认对同一url的get操作,返回的内容相同。出现这种情况我想是因为你的a.jsp是通过之前的post操作显示出来的吧,尝试改成get。如果在详单页面中存在对于数据的更改,在返回时最好不要使用history导航的方式,浏览器是不会去服务器端拿数据的,最好是将url带过来吧,用根据url控制浏览器跳转,get方式在最后记得加上随机时间戳,不然有可能出现数据不更新的情况。