我的JSP代码是
<c:forEach var="batchException" items="${batchExceptionType}">
<button> ${batchException.key}</button>
<div id="${batchException.key}">
...
</div>
</c:forEach>
batchExceptionType是一个Map,它是使用JSTL来自Java代码的。
我要在单击按钮时隐藏并显示div。
由于创建的div数量不固定。所以我不确定如何创建JavaScript函数来隐藏和显示该div
谢谢。
答案 0 :(得分:1)
尝试
<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>
答案 1 :(得分:0)
您也可以使用纯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;
}
更好地解释了here。