jsp使用 c:forEach
时间: 2024-03-17 19:42:18 浏览: 69
详解JavaScript中的forEach()方法的使用
好的,以下是使用 JSP 标签库 `c:forEach` 实现的代码:
HTML/JSP:
```jsp
<ul id="list">
<c:forEach var="item" items="${items}" varStatus="status">
<li id="<c:out value="${status.index+1}"/>"><c:out value="${item}"/></li>
</c:forEach>
</ul>
```
JavaScript:
```javascript
const list = document.getElementById('list');
// 添加点击事件监听器
list.addEventListener('click', (event) => {
const id = event.target.id;
console.log(`Clicked item with id ${id}`);
});
```
这段代码与前面的 JSP 版本类似,只不过使用了 JSTL (JSP Standard Tag Library) 中的 `c:forEach` 标签来循环渲染列表项。在 `c:forEach` 标签中,我们使用了 `items` 属性来指定要循环的数组,然后使用 `var` 属性来指定循环变量的名称,使用 `varStatus` 属性来指定循环计数器的名称。在 `li` 元素的 `id` 属性和文本内容中,我们使用了 `<c:out>` 标签来输出变量值,以避免可能存在的 XSS 攻击。
在 JavaScript 中,我们仍然使用了原生 JavaScript 的方法来添加点击事件监听器,并获取列表项的 `id` 值。根据需要,您可以在 JSP 中修改数组内容和循环方式,来满足您的需求。
阅读全文