用于在视图中动态添加 类 的字符串连接
String concatination for dynamically adding classes in View
我列出了用户以前使用过的送货地址 select。我正在动态添加 classes
<div class="row">
<% @shipping_addresses.each do |address| %>
<ul class=<%= "shipping_address_#{address.id}" %> >
<li><%= address['name'] %> </li>
<li><%= address['street'] %> </li>
<li><%= address['city'] %></li>
<li><%= address['country'] %></li>
<li><%= address['zip'] %></li>
<li><%= address['phone'] %> </li>
</ul>
<% end %>
</div> <!-- row -->
问题是,现在我正在尝试将 col-lg-3 bootstrap class 添加到我的 ul`s,但当我这样写时它不起作用:
<ul class=<%= "shipping_address_#{address.id} col-lg-3" %> >
我得到这个输出:
<ul class="shipping_address_38" col-lg-3="">
我也尝试了几种不同的选择,但它们都不起作用。
有人可以帮忙吗?
谢谢
您实际输出的 html 是
<ul class=shipping_address_38 col-lg-3>
并且您的浏览器正在尽可能地解释它。模板中的引号永远不会成为实际的 html 因为它们实际上不是字符串的一部分。
你可以这样做
<ul class="<%= "shipping_address_#{address.id} col-lg-3" %>" >
尽管在我看来您现在已经过了 ERB 变得难以阅读的地步 - 您可能希望将其重构为一个帮助程序。
我列出了用户以前使用过的送货地址 select。我正在动态添加 classes
<div class="row">
<% @shipping_addresses.each do |address| %>
<ul class=<%= "shipping_address_#{address.id}" %> >
<li><%= address['name'] %> </li>
<li><%= address['street'] %> </li>
<li><%= address['city'] %></li>
<li><%= address['country'] %></li>
<li><%= address['zip'] %></li>
<li><%= address['phone'] %> </li>
</ul>
<% end %>
</div> <!-- row -->
问题是,现在我正在尝试将 col-lg-3 bootstrap class 添加到我的 ul`s,但当我这样写时它不起作用:
<ul class=<%= "shipping_address_#{address.id} col-lg-3" %> >
我得到这个输出:
<ul class="shipping_address_38" col-lg-3="">
我也尝试了几种不同的选择,但它们都不起作用。
有人可以帮忙吗?
谢谢
您实际输出的 html 是
<ul class=shipping_address_38 col-lg-3>
并且您的浏览器正在尽可能地解释它。模板中的引号永远不会成为实际的 html 因为它们实际上不是字符串的一部分。
你可以这样做
<ul class="<%= "shipping_address_#{address.id} col-lg-3" %>" >
尽管在我看来您现在已经过了 ERB 变得难以阅读的地步 - 您可能希望将其重构为一个帮助程序。