Thymeleaf网页中JS获取后台Model传递的数组列表
需积分: 39 105 浏览量
更新于2024-09-07
收藏 2KB TXT 举报
"在 Thymeleaf 网页中,JS 获取 Model 中的数组列表"
在 Thymeleaf 网页中,JS 获取后台 Model 传递过来的对象非常重要,这对减少数据库表操作代码的工作量,以及使前台开发更具灵活性具有非常重要的作用。获取 Model 传过来的简单变量很简单,但是获取它传过来的对象却不容易。本例中,我们将介绍如何在 Thymeleaf 网页中使用 JS 获取后台通过 Model 传递过来的数组列表。
在 Thymeleaf 中,我们可以使用 Model 来传递数据给视图层。在 Controller 中,我们可以使用 `@RequestMapping` 注解来映射请求,并将数据添加到 Model 中。在本例中,我们使用 `ArrayList` 来存储数组列表, 并将其添加到 Model 中。
在 Controller 中的代码如下所示:
```java
@RequestMapping("/user")
public String userHandler(Model model) {
List<String[]> msglist = new ArrayList<String[]>();
String[] arr = new String[] {"aa", "bb", "cc"};
msglist.add(arr);
arr = new String[] {"good", "hello"};
msglist.add(arr);
arr = new String[] {"abc@sohu.com", "xyz@sina.com"};
msglist.add(arr);
model.addAttribute("msglist", msglist);
return "user";
}
```
在上面的代码中,我们使用 `ArrayList` 来存储数组列表,并将其添加到 Model 中。在视图层中,我们可以使用 Thymeleaf 的 `th:each` 属性来遍历数组列表。
在视图层中的代码如下所示:
```html
<table id="msglistTable" style="position:absolute;left:-58000px;top:0px;">
<tr th:each="items: ${msglist}">
<td th:each="item: ${items}" th:text="${item}"></td>
</tr>
</table>
```
在上面的代码中,我们使用 `th:each` 属性来遍历数组列表,并使用 `th:text` 属性来显示数组元素的值。
在 JS 中,我们可以使用 `document.getElementById` 方法来获取表格元素,并使用 `for` 循环来遍历数组列表。代码如下所示:
```javascript
var msglist = [];
$(document).ready(init);
function init() {
try {
var tb = document.getElementById("msglistTable");
for (var r = 0; r < tb.rows.length; r++) {
var arr = [];
var row = tb.rows[r];
for (var c = 0; c < row.cells.length; c++) {
arr[c] = row.cells[c].innerText;
}
contentCfgs[r] = arr;
}
} catch (e) {
alert("e=" + e);
}
}
```
在上面的代码中,我们使用 `document.getElementById` 方法来获取表格元素,并使用 `for` 循环来遍历数组列表。我们还使用 `try-catch` 语句来捕获异常。
在 Thymeleaf 网页中获取 Model 中的数组列表可以使用 Thymeleaf 的 `th:each` 属性和 JS 的 `for` 循环来实现。通过这种方式,我们可以轻松地获取后台传递过来的数组列表,并在前台进行处理和显示。
rbc168
- 粉丝: 1
- 资源: 67
最新资源
- C++标准程序库:权威指南
- Java解惑:奇数判断误区与改进方法
- C++编程必读:20种设计模式详解与实战
- LM3S8962微控制器数据手册
- 51单片机C语言实战教程:从入门到精通
- Spring3.0权威指南:JavaEE6实战
- Win32多线程程序设计详解
- Lucene2.9.1开发全攻略:从环境配置到索引创建
- 内存虚拟硬盘技术:提升电脑速度的秘密武器
- Java操作数据库:保存与显示图片到数据库及页面
- ISO14001:2004环境管理体系要求详解
- ShopExV4.8二次开发详解
- 企业形象与产品推广一站式网站建设技术方案揭秘
- Shopex二次开发:触发器与控制器重定向技术详解
- FPGA开发实战指南:创新设计与进阶技巧
- ShopExV4.8二次开发入门:解决升级问题与功能扩展