禁用link_to链接无法正常工作但隐藏link_to工作

cod*_*lan 5 ruby-2.1 ruby-on-rails-4.1

link_to方法未被禁用: -

<%= link_to edit_cabinet_path(object), remote: true, disabled: true do %>
      <span class="glyphicon glyphicon-pencil"></span>
<% end %>  
Run Code Online (Sandbox Code Playgroud)

但如果我喜欢下面隐藏链接

<%= link_to edit_cabinet_path(object), remote: true, style: "display:none;" do %>
      <span class="glyphicon glyphicon-pencil"></span>
<% end %>  
Run Code Online (Sandbox Code Playgroud)

现在的问题是如何使用块禁用这种类型的链接,并解释第二个代码工作的原因,而不是第一个代码.

prz*_*adu 10

可能你正在寻找link_to_if.link_to_if只有在条件通过后才能使您的链接可点击.

你的代码应该是这样的:

<%= link_to_if false, edit_cabinet_path(object), remote: true do %>
      <span class="glyphicon glyphicon-pencil"></span>
<% end %> 
Run Code Online (Sandbox Code Playgroud)

要使其动态化,您可以调用满足是否激活该链接的条件,例如:

<%= link_to_if cabinate.active?, 
               "<span class='glyphicon glyphicon-pencil'></span>".html_safe, 
               edit_cabinet_path(object), remote: true %>
Run Code Online (Sandbox Code Playgroud)

希望这能回答你的问题......