在一些非表单页面上,我有一些链接,这些链接用按钮的形式会比超链接更好看…
我曾认为可以使用button_to而不是link_to,但是button_to似乎总是被视为发布。
有没有一种简单的方法来仅仅将一个(非提交)链接替换为一个按钮?
我曾认为可以使用button_to而不是link_to,但是button_to似乎总是被视为发布。
有没有一种简单的方法来仅仅将一个(非提交)链接替换为一个按钮?
你只需要在 button_to
的末尾添加 :method => "get"
,就可以让它像链接一样处理了。
使用 users_path
<%= button_to "BUTTON: link version", users_path, :method => "get" %>
或者,你可以采用从网页设计角度更加简洁的方式,用样式使链接看起来像一个按钮,而不是将表单实际插入到你的HTML中(这就是button_to所做的)。这种方法有几个好处:
这里有一篇很棒的文章,教你如何做。下面是其中一个小片段的代码,真正的关键在于调整边框、填充和背景图像等属性。
a.button {
background: transparent url('bg_button_a.gif') no-repeat scroll top right;
color: #444;
display: block;
float: left;
font: normal 12px arial, sans-serif;
height: 24px;
margin-right: 6px;
padding-right: 18px; /* sliding doors padding */
text-decoration: none;
}
这段代码来自于上面的链接。无论您选择哪种方法都应该能够正常工作,祝您使用愉快!
我认为你想要的只是视图。如果是这种情况,那么您只需向链接中的类对象添加一个类即可。
<%= link_to '添加类', new_subject_path, class: "btn btn-primary"%>
最近我不得不这样做,因为我的表单在使用link_to时与button_to的表现不同,我需要链接提供的功能。我找到的最佳解决方案根本不使用CSS,而是调用.html_safe来转义Ruby代码中的HTML并正确地显示链接作为按钮。你想要做的是:
<%= link_to "<button>This is a button</button>".html_safe, some_path, :id => "button_id", :class => "button_class" %>
link_to
助手传递一个块,这样会得到更干净的解决方案。请注意不要改变原意。 - Noz将link_to
改为button_to
就可以了。
<a>
。完成。 - Matchu