[英]link_to block not working
我正在使用一系列link_to
块在我的应用程序中创建按钮。 但是,我发现这些链接最终无法正常工作。 当我将鼠标悬停在按钮上时,它可以识别链接,正确的URL显示在firefox的左下角,但是当我单击时,什么也没有发生。 我的终端或开发日志中也没有任何内容。
我的代码如下:
<%= link_to new_folder_path do%>
<div class="btn btn-default add-button add_fields"><span class="glyphicon glyphicon-plus"></span>Add Folder</div>
<% end %>
这将呈现以下html:
<li>
<a href="/folders/new">
<div class="btn btn-default add-button add_fields"><span class="glyphicon glyphicon-plus"></span>Add Folder</div>
</a>
</li>
我还应该注意,如果我只是在不带do块的情况下键入标准链接,则它运行得很好:
<li><%= link_to "test", new_folder_path %></li>
任何对此的想法将不胜感激!
尝试这个。
= link_to "<span class='glyphicon glyphicon-plus'></span>Add Folder".html_safe, new_folder_path, class: 'btn btn-default add-button add_fields'
您最好将button_to
用于按钮-
生成包含一个按钮的表单,该按钮提交到由选项集创建的URL。
因此,而不是你的link_to
,你可以使用:
<%= button_to "Add Folder", new_folder_path, class: "btn btn-default add-button add_fields glyphicon glyphicon-plus" %>
附带说明一下,如果您尝试在 <a>
标记内设置元素的样式,则会遇到问题。 更好地设置<a>
标记本身的样式,或者根本不样式。
因此,使用以下方法可以解决您遇到的问题:
<%= link_to "Add Folder", new_folder_path, class: "btn btn-default add-button add_fields glyphicon glyphicon-plus" %>
-
图标
我知道Bootstrap包括Glyphicons
。 如果它们像ionIcons
类的ionIcons
,它们将在字形前面加上一个:before
伪类来工作。
如果是这种情况, 则不需要单独的<span>
元素来封装它们; 只需将类添加到您的链接/按钮中,然后:before
。
当然 ,如果要在链接内部设置跨度样式,则必须使用link_to
块; 但是,您需要确保将文本括在span
而不是不包含任何内容。
原来我将一个类放到了div中,阻止了链接的呈现( add_fields
是该类)。 深刻的不满意的答案是它是什么。 感谢所有花时间给我提示的人。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.