如何实现在当前jsp页面中通过点击按钮来跳转到上一个次访问的页面
2016-10-18 15:32
836 查看
1.问题来源场景介绍:
列表页展示:新增项目页面展示:
在项目列表展示页面中,点击”添加“按钮,可以跳转到新建项目页面.当新增页面只能从指定某一个列表展示页面中跳转过来时,只需要在返回按钮对应的超链接地址中写明项目列表展示页的访问路径既可实现跳转到上一次访问的页面.如下:
<!-- 这里的 list.ht 是使用的相对于当前页面的相对路径 --> <a class="link back" href="list.ht">返回</a>
问题关键点:
当多个页面中均有”添加“按钮,即可以从多个页面跳转到新建项目页面时,以上方法便不能奏效了.
2.问题分析:
(1)项目工程介绍
出现问题的项目采用的SSM框架进行的开发,并且jsp页面都是放置在WEB-INF目录下,如图:所以,不可以直接访问jsp页面,都必须通过Controller实现跳转,才可以进行访问指定的jsp页面.也正是因为这一种原因,不可以使用
window.history.back().
(2)处理思路:
在访问项目列表展示页时,在对应的Controller方法中,获取到对应项目列表展示页的访问路径,并将该路径带回到项目列表展示页中;在项目列表展示页中对应的添加按钮上,将访问路径作为参数传递给访问新建项目对应的Controller方法中;
在Controller方法中获取到访问路径,然后再将访问路径带回到新建项目列表对应的jsp页面中,在返回按钮对应的href参数赋值时,取出访问路径的值.既可以实现跳转到上一次访问的页面.
3.代码:
(1)访问项目列表jsp页面对应的Controller方法:
@RequestMapping("list2") public ModelAndView list2(HttpServletRequest request,HttpServletResponse response) throws Exception { <!-- 获取到相应的访问路径 --> String preUrl= request.getRequestURI(); List<NewItem> list=newItemService.getAll(filter); <!-- 将访问路径放入mv中 --> ModelAndView mv=this.getAutoView().addObject("itemList",list).addObject("returnUrl", preUrl); return mv; }
(2)在项目展示列表对应的jsp页面中,在添加按钮对应的href属性中取出访问路径:
<a class="link add" href="edit.ht?returnUrl=${returnUrl}">添加</a>
(3)访问新增项目jsp页面对应的Controller方法:
@RequestMapping("edit") public ModelAndView edit(HttpServletRequest request) throws Exception { <!-- 获取到相应的访问路径 --> String url=RequestUtil.getSecureString(request,"returnUrl"); Long id=RequestUtil.getLong(request,"id"); String returnUrl=RequestUtil.getPrePage(request); NewItem item =newItemService.getById(id); <!-- 将访问路径放入mv中 --> return getAutoView().addObject("item",item) .addObject("returnUrl",returnUrl) .addObject("url", url); }
(4)在新建项目对应的jsp页面中,在返回按钮对应的href属性中取出访问路径:
<c:set var="ctx" value="${pageContext.request.contextPath}" />
<a class="link back" href="${ctx}${url}">返回</a>
相关文章推荐
- 在页面中,我们经常看到,一个button按钮,如果属标点击,就会触发一个窗口的显示,如果二次点击并可以隐藏,那么如何通过JAVA配合html来实现这一功能呢?
- 如何实现点击一个按钮后跳转的指定的链接页面
- jsp 中实现点击按钮 实现页面跳转到HTML
- Ext4.2 如何实现点击一按钮,页面跳转
- qt通过点击按钮跳转当前图片坐标实现图片移动
- 制作login.jsp页面,要求实现提供用户登陆的界面, 用户通过该界面输入用户名(控件名userName)和密码(控件名password), 然后点击“登录”按钮实现登陆操作.
- 如何通过HTML标记或JS代码实现跳转返回页面顶部
- 如何在JSP页面中通过一个按钮,在对话框中选择一个目录而不是选择一个文件;input type=file只能选择一个文件,我想选择一个目录;做不出来项目经理要扣奖金的...............
- 使用javabean实现当前页面的访问次数(jsp)
- jsp如何实现页面跳转
- js 按钮实现跳转页面 jsp html
- 用servlet如何实现jsp登陆页面的跳转??搜索
- 点击单选按钮实现页面跳转
- js 按钮实现跳转页面 jsp html
- jsp 一个具有两个frame框架的页面在跳转到新页面时,如何使新页面覆盖当前窗口,不跳转到新的页面
- 用按钮或链接实现JSP页面跳转
- jsp中通过按钮跳转到其他页面
- 在ASP.NET登录页面中如何实现文本框焦点自动跳转及通过回车键提交表单
- 如何用js实现,在一个页面有个输入文档框,然后点击查询按扭后,调用IE的查询功能在当前页面进行查询
- jQuery如何实现点击页面获得当前点击元素的id或其他信息