我想获取当前点击的ID在下面的表行中的图片。但它总是出现在表格的第一行之下。我想在点击的Id下面显示图片。帮我解决这个问题。
我的ruby on rails代码是......
<table>
<tr>
<th>ID</th>
<th>Name</th>
<th>Address</th>
</tr>
<% @student.each do |stu|%>
<tr>
<td><%= link_to stu.id ,'#', :onclick => "showImage()"%></td>
<td><%= stu.name></td>
<td><%= stu.address%></td>
</tr>
<tr><td colspan='3'><div id="image" style="display: none"><%= image_tag stu.image %></div></td></tr>
<% end %>
</table>
javascript
代码:
<script>
function showImage(){
document.getElementByID("image").style.display='none';
}
</script>
答案 0 :(得分:0)
原因是你没有设置你的div包含图片的任何动态ID所以这里试试这个:
1-
<% @student.each do |stu|%>
<tr>
<td><%= link_to stu.id ,'#', :onclick => "showImage(stu.id)"%></td>
<td><%= stu.name></td>
<td><%= stu.address%></td>
</tr>
<tr><td colspan='3'><div id="<%=stu.id%>" style="display: none"><%= image_tag stu.image %></div></td></tr>
<% end %>
2-在脚本标签中更改以下内容:
<script>
function showImage(image_id){
document.getElementByID(image_id).style.display='block';
}
</script>