![](/img/trans.png)
[英]Rails 4 - How do I use dynamic div ids from div_for in a js.erb file?
[英]How do I make my div IDs variable in rails?
我覺得應該有一個簡單的方法來執行此操作,但我只是不知道它是什么。 我有一個要顯示的數據列表,我想包括一個AJAX“更多信息”功能以在每個段的底部擴展信息。 為此,我需要在每個段中使用唯一的div ID。 我有以下代碼:
<% for choice in @student_choices %>
<div id= "student_description", style="display:none;">
<%= choice[:description]%>
</div>
<%= link_to_function "Read More", "Element.show("student_description")"%>
<% end %>
但是由於存在多個div ID,因此單擊“閱讀更多”只會顯示第一個。 如何插入變量div ID? 我知道如何在PHP中執行此操作,但這使我感到困惑。 即使我們將div ID本身設置為變量,也如何使Element.show接受變量?
您可以執行以下操作:
<% div_id = "student_description_#{choice.id}" -%>
<div id="<%= div_id -%>", style="display:none;">
<%= choice.description %>
</div>
<%= link_to_function "Read More", "Element.show('##{div_id}')" %>
傳統的rails方法是使用dom_id
然后,您可以執行類似的操作
<% for choice in @student_choices %>
<div id="<%= dom_id(choice) %>" style="display:none;">
<%= choice[:description]%>
</div>
<%= link_to_function "Read More", "Element.show('#{dom_id(choice)}')"%>
<% end %>
盡管您可以使用給定的示例(有效的示例),但我建議您使用rails函數(http://api.rubyonrails.org/classes/ActionView/Helpers/RecordTagHelper.html)。 然后在按鈕/鏈接上,您只找到具有特定類的最近的div並提取id並執行顯示邏輯。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.