我的JSP代码是
<c:forEach var="batchException" items="${batchExceptionType}">
<button> ${batchException.key}</button>
<div id="${batchException.key}">
...
</div>
</c:forEach>
batchExceptionType是一个来自使用JSTL的Java代码的Map。
我想在按钮单击时隐藏和显示div。
由于创建的div 数量不是固定的。所以我不确定如何创建 JavaScript 函数来隐藏和显示这个div
提前谢谢。
试试这个
<c:forEach var="batchException" items="${batchExceptionType}">
<button onclick="hideShowDiv(${batchException.key})"> ${batchException.key}</button>
<div id="${batchException.key}">
...
</div>
</c:forEach>
然后在脚本中
<script>
function hideShowDiv(divId){
$(#divId).toggle();
}
</script>
你也可以用一个纯粹的CSS解决方案来做到这一点。 通过使用输入复选框及其样式属性:checked
.
<label class="button" for="toggle-1">${batchException.key}</label>
<input type="checkbox" id="toggle-1">
<div id="${batchException.key}">
和 CSS:
div {
display: none
}
input[type=checkbox]:checked + div {
display: inherit;
}
这里解释得更好。