【发布时间】:2016-11-24 10:20:31
【问题描述】:
当我单击加号时,应该会出现一个窗口来指示更多详细信息,如下所示:
我正在尝试循环并添加一个 javascript 函数,以使每个公告中的信息出现在每个加号上。但是,我遇到了一个问题,即每个加号都显示来自第一个公告(测试 2)的信息。我的代码如下:
<% @announcements.each do |announcement| %>
<!-- sets each announcement to be 3 per row -->
<div class="col-md-4 announcement-div">
<!-- Title and subject of the announcement -->
<p>
<span class="topBottom"><%= announcement.subject %></span>
<br>
<%= announcement.created_at.strftime("%m/%d %Y %I:%M %p") %>
</p>
<!-- Stars to signify important events -->
<% if announcement.importance %>
<h2>★</h2>
<% end %>
<!-- The plus sign button -->
<button type="button" class="btn popup-btn">+</button>
<!-- Current announcement Display Code -->
<div id="announcementDisplayModal" class="modal">
<span id="announcementDisplayModal-close" class="close" onclick="document.getElementById('announcementDisplayModal').style.display='none'">×</span>
<div class="modal-content well modal-dimensions">
<h3 class="cardinal borders"> <%= announcement.subject %> </h3>
</div>
</div>
</div>
<% end %>
还有 javascript:
<script>
// Get the modal
var modal = document.getElementById('announcementDisplayModal');
$('.popup-btn').click(function() {
modal.style.display = "block";
});
// Get the <span> element that closes the modal
var span = document.getElementById("announcementDisplayModal-close");
// When the user clicks on <span> (x), close the modal
span.onclick = function() {
modal.style.display = "none";
}
</script>
关于如何解决的任何想法?我尝试将它从 getElementById 更改为按类类型获取元素并将 ID 更改为类,但这不起作用。
【问题讨论】:
标签: javascript html ruby-on-rails sass bootstrap-modal