利用layer实现JSP页面参数跳转与HTML子节点值获取
47 浏览量
更新于2024-08-28
收藏 54KB PDF 举报
在JSP页面开发中,当我们需要实现从一个页面(如original.jsp)通过按钮点击跳转到另一个页面的同时,可能还需要在目标页面获取到源页面中某个HTML子节点元素的值。这一过程通常涉及到前端JavaScript交互和后端Java的处理。以下是如何在layer插件的帮助下完成这一功能的详细步骤。
1. **前端页面操作**:
- 在original.jsp中,利用layer组件实现页面的异步跳转。`layer.open` 方法被用于弹出一个新的窗口或层,并传递参数。用户点击按钮时,会触发名为 `btnClick.shownewPage` 的事件处理器。该事件处理器首先获取被点击行的 `Id` 值(例如,可能是一个表格中的行号),然后将其拼接到URL中作为查询参数,如 `'/switch/switchAction!getNewPage.do?Id='+Id`。这样,当页面跳转时,这个 `Id` 就会被传送到后端。
2. **页面跳转与参数传递**:
- 使用 `layer.open` 的 `type: 2` 表示打开一个新的浏览器窗口,`area` 属性定义了新窗口的大小。`shadeClose` 参数确保了点击遮罩可以关闭弹出的窗口。
- 跳转的目标是 `SwitchAction` 类的 `getNewPage` 方法,这是Struts框架中一个典型的控制器操作。在这个方法中,通过 `HttpServletRequest` 对象获取到传递的 `Id` 参数,然后将它设置为request属性以便后续使用。
3. **后端逻辑**:
- 在 `SwitchAction` 类中,`@Scope(value="prototype")` 注解表明这个类实例化时会创建一个新的bean,适合处理单个请求。`@Controller("SwitchAction")` 是Spring MVC的注解,声明这是一个控制器。
- `getNewPage` 方法中,通过 `request.getParameter("Id")` 获取前端传递的 `Id` 值。接着,将这个值再次设置到request中,这将使Struts2的action能够识别并处理这个参数。
- 如果需要获取HTML子节点元素的值,例如在数据库中对应的字段,可以调用 `pageService.getObjectById(Id)` 来获取数据对象,然后从中提取所需的HTML字符串。比如,如果该对象有一个名为 `newHtml` 的属性,那么就通过 `StringBuffer` 构造该字符串,然后使用 `response.getWriter().print()` 方法将其写入响应,从而在新页面中显示出来。
实现这种页面跳转并在目标页面获取源页面HTML子节点元素的方法是结合前端JavaScript(通过layer组件)、前端与后端的数据交换(通过HTTP请求参数传递)以及后端Java业务逻辑(通过Struts Action和数据访问服务)。这涉及到了Web应用开发的核心技能,包括前端UI交互、服务器端数据处理和前后端数据通信。
328 浏览量
106 浏览量
2479 浏览量
240 浏览量
272 浏览量
570 浏览量
2379 浏览量
2023-08-04 上传
142 浏览量
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
weixin_38628953
- 粉丝: 6
最新资源
- Spring事务测试详解:属性配置与注解XML方法
- QQ聊天程序的格式转化demo演示
- C++开发的综合评价模型实现解析
- MyBatis代码生成工具:轻松实现Mapper与实体类
- 实现前端注册界面与数据验证的教程
- Java实现树形数据结构及遍历算法教程
- 安徽OI:2001-2012年AHOI试题与数据解析
- Java顺序搜索方法详解与实践
- Android Bitmap合并工具库:高效合并图片无内存溢出
- MATLAB水果图片分类与识别技术解析
- JAVA经典算法书《算法第四版》高清PDF版
- SX1261/2无线收发芯片技术手册解析
- Space Force高清壁纸插件: 新标签页主题体验
- 解密手持频谱分析仪:原理图和源码详解
- OpenCV 3.2.0 3rdparty依赖包下载指南
- 实现Android动态图表:折线、柱状与饼状图