【发布时间】:2018-05-02 01:48:34
【问题描述】:
谁能帮帮我。我在这段代码中停留了大约几周。
我想要做的是在图像底部有一个带有按钮的图像滑块,它将以模态显示图像的相应信息。
<div class=swipeManual>
<c:forEach var = "tempCustomer" items = "${customers}">
<img id="imgS" src="${pageContext.request.contextPath}/resources/images/${tempCustomer.image}" style="z-index:-2" >
<button class="buttonImg myBtn" type="button" style="z-index:-1">Click Me!</button>
<div id="myModal" class="modal">
<!-- Modal content -->
<div class="modal-content">
<span class="close">×</span>
<p>${tempCustomer.description}</p>
</div>
</div>
</c:forEach>
这里是 JavaScript
<script>
var buttons = document.querySelectorAll('.buttonImg');
function clickHandler(em) {
var modal = document.getElementById(em);
modal.style.display = "Block";
}
for (var i = 0; i < buttons.length; i++) {
(function () {
var but = buttons[i].parentNode.id;
buttons[i].addEventListener("click", function() { clickHandler(but)}, false);
}()); // immediate invocation
}
</script>
编辑
请任何人都可以帮助我。我永远停留在这段代码中。
【问题讨论】:
-
你没有明确提到这个问题
-
我真的很抱歉@brk 问题是只有第一个按钮在轮播上起作用,即打开带有图像描述的模式,其余的不起作用
-
我认为我循环的按钮不正确,因为只有第一个按钮有效。你能解决这个问题吗?
-
您已经用 jquery 标记了您的问题,但根本没有使用它。你会对 jquery 类型的答案感兴趣吗?这可以大大简化您的代码。另外,我无法理解您的意图:您显然希望在单击按钮时显示其父元素。但这首先要求这个元素是可见的。那么,这里有什么意义呢?还有一点:你在哪里定义数组
elem? -
@cars10m 如果你能简化代码,我会非常有兴趣学习它。我只是想创建一个图像滑块,它在图像上有按钮,它将使用 Spring 在模态中显示来自数据库的图像信息。
标签: javascript jquery jsp spring-mvc foreach