2013-12-19 56 views
0

我有这样的代码有check方法返回true或false将Ruby代码打破HTML

<%= link_to path, format: 'js' do %> 
      <i class="<%= check ? "close\"></i>Unfollow member" : "open\"></i>Follow member></i>" %> 
<% end %> 
</div> 
    <div class="list-group list-normal m-b-none"> 

但这输出

<i class="close&quot;&gt;&lt;/i&gt;Unfollow member 
&lt;/a&gt; &lt;/div&gt; 
    &lt;div class=" list-group="" list-normal="" m-b-none"=""> 
</i> 

这怎么可能呢? (我不想再重复内外i标签check语句)

回答

1

我认为以下将是更具可读性:

<% if check %> 
    <i class="close">Unfollow member</i> 
<% else %> 
    <i class="open">Follow member></i> 
<% end %> 

更新:

为了让一个衬垫:

<%= check ? "<i class='close'>Unfollow member</i>" : "<i class='open'>Follow member></i>" %> 
+0

是的,我知道,但我想要一个行的声明;)是否有可能? – user1611830

+0

@ user1611830,请参阅我的更新。 – vee

0
<%= link_to path, format: 'js' do %> 
    <i class="<%= check ? "'close'></i>Unfollow member" : "'open'></i>Follow member>" %></i> 
<% end %> 

我没有尝试。但如果可能有效。