返回按钮的实现使用 history.go(-1),此方法可返回上一操作但会记录当前页签的所有操作,所以子页签同时操作的情况下就会产生混乱。

例:

当前页签下,若其一子页签A停留在A1页面,另一子页签B连续操作进入各个页面最后停留在B10。此时返回A页面点击返回,当前A页面不会有反应,而子页签B退回到页面B9。这对返回按钮操作来说是存在问题的。

最初问题出现在列表页面与查看页面的切换,进入查看页面有综合查询列表(list)及个人填写列表(myList),所以列表页面可以添加传入参数url区分由哪个页面进入的查看页面,同时 controller 接收传参放入 model,再传入页面上,此时页面就可直接设置返回按钮的 href 达到固定返回按钮跳转 url 的目的。

进一步思考,能否减少修改范围,或只修改页面就能解决这个问题,查询到 js 方法 document.referrer 可返回载入当前文档的文档的 URL。于是页面初始加载 ready 中修改返回按钮的 href 即可达到目的。

$("#btnBack").attr("href", document.referrer);

进一步优化在返回按钮中使用 js 方法,直接使用<input>标签执行 js 方法更加方便,结果如下

<input class="btn" type="button" value="返回" οnclick="location.href=document.referrer" />

实际使用中再次发现问题,document.referrer返回无参数,即原查询列表的查询结果,再点击返回后就失去了查询结果最后又回到了修改 history.go(-1) 方法。进入页面时,记录当前历史记录长度,即 historyNum = history.length,通过计算就可得知应退回多少步,即结果

<input class="btn" type="button" value="返回" οnclick="history.go(historyNum-history.length-1)" />

前端实现返回前一页面相关推荐

  1. AngularJs返回前一页面时刷新一次前面页面

    要求: 页面A进入到页面B,在页面B处理完后返回页面A,页面A里的数据应该动态的减去一条,但由于一般情况下页面是缓存起来的,返回A后读取的是缓存静态页面,里面显示的数据不会减少.应客户要求,需要重新加 ...

  2. js中实现页面跳转(返回前一页、后一页)

    一:JS 重载页面,本地刷新,返回上一页 代码如下: <a href="javascript:history.go(-1)">返回上一页</a>  < ...

  3. java跳转页面后再跳回前一个页面_js中实现页面跳转(返回前一页、后一页)

    一:JS 重载页面,本地刷新,返回上一页 代码如下: 返回上一页 重载页面,本地刷新 返回上一页重载页面,本地刷新 返回前二页并刷新的JS代码应该怎样写. 代码如下: history.go(-2); ...

  4. JS返回前一页(或关闭本页面,返回首页)

    navigator.userAgent在判断浏览器版本时,需要自己核对下,不同的浏览器返回的window.history.length值也不同,需要特殊情况特殊处理,但核心逻辑就是如此,先判断浏览器版 ...

  5. php执行成功后返回前一页并刷新页面

    这个问题是群里有人问的. 他有一个退出的页面logout.php,希望用户在点击退出按钮后退出登录状态,并返回之前的页面. 他写的代码如下: <?php echo "<scrip ...

  6. 前端性能优化:当页面渲染遇上边缘计算

    简介: 当前几种常见的前端性能优化方案仍然不可避免地会存在一些缺点.本文在 ESI (Edge Side Include) 的基础上,提出了一种新的优化思路:边缘流式渲染方案(ESR),即借助 CDN ...

  7. Vue:前端体系与前后端分离

    Vue:前端体系与前后端分离 概述 介绍 ​ Vue(读音/viu/,类似于 view)是一套用于构建用户界面的渐进式框架,发布干 2014 年 2 月. 与其它大型框架不同的是,Vue 被设计为可以 ...

  8. Vue:前端体系、前后端分离

    1.概述 Vue (读音/vju/, 类似于view)是一套用于构建用户界面的渐进式框架,发布于2014年2月.与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用.Vue的核心库只关注视图层 ...

  9. vue 传参 微信_小猿圈web前端之微信小程序页面间跳转传参方式总结

    原标题:小猿圈web前端之微信小程序页面间跳转传参方式总结 最近小程序发展的越来越快,很多大公司也在打造自己的小程序平台以及购物小程序等等,今天小猿圈web前端讲师就总结了关于微信小程序的知识点,首先 ...

最新文章

  1. 三菱gs触摸屏进入设定菜单_三菱触摸屏常用功能设置 以及界面调整
  2. css文本 颜色1
  3. Tensorflow tf.keras.models.load_model() 打开h5文件失败
  4. 一起来学Spring Cloud | 第五章:熔断器 ( Hystrix)
  5. boost::math::barycentric_rational用法的测试程序
  6. YUV422转RGB24
  7. 11、java中的I/O流(1)
  8. Android studio错误:module not specified
  9. 阿里云盘来了,百度网盘VS阿里云盘,你更看好谁!
  10. 为什么很少人用redmine_为什么古代书法家要把字写歪?
  11. linux中tmp文件在哪,tmp是什么文件(了解linux系统目录,sys,tmp,usr,var)
  12. 【presto 】presto 新版本升级详情
  13. Flutter 图片和多行文本中的第一行对齐,文字行高、行距、偏移设置
  14. Android熄屏与亮屏控制
  15. Elasticsearch数据读写过程
  16. Fiddler过滤器Filterset的使用
  17. vue生成二维码图片并且下载图片到本地
  18. 怎么从浩如烟海的书籍论文中找到有用信息?写论文、搞研究必看!
  19. 以后数据收集、共享、查询全靠它了,太高效!
  20. Linux下的回收站trash

热门文章

  1. 无废话xml下载_废话之盾
  2. android手机8g内存够用嘛,手机内存应该如何选择,6G和8G有多大差距,建议你这样选...
  3. 查找同一批次号中批次号最小的文件名称
  4. C#调用COM接口的三种方式
  5. 浅谈视频监控管理平台现状及发展趋势
  6. 【putty】putty、psftp、pscp【原创】
  7. ef mysql 配置字符串_连接字符串-EF Core | Microsoft Docs
  8. linux epel
  9. 从只用Excel做报表,到可视化报表工具真香,他经历了什么
  10. 【小白系列】C语言 猜数字游戏