<%= link_to 'New Post', new_post_path %>
这会产生指向new_post_path
. 以前我用过<input type="submit" class="new" name="Addlist" value="Add New" />
它就像一个按钮。那么如何使链接看起来像 erb 中的按钮?
<%= link_to 'New Post', new_post_path %>
这会产生指向new_post_path
. 以前我用过<input type="submit" class="new" name="Addlist" value="Add New" />
它就像一个按钮。那么如何使链接看起来像 erb 中的按钮?
只是为了抛出另一个选项,因为我遇到了 button_to 选项不起作用的情况。这看起来有点像那个。
<%= link_to '<button type="button">New Post</button>'.html_safe, new_post_path %>
我基本上想要的是一个不会变成提交的按钮,因为我在页面上有多个与表单无关的按钮,我真的只是希望它只是转到另一个页面。
看看button_to。总而言之,它将与此类似:
<%= button_to "New Post", { :action => "new" }, :method => :get %>
尽管请注意,此方法接受文档中描述的:method
and:confirm
修饰符。link_to
如果没有:method
给出修饰符,它将默认执行一个POST
操作。你也可以通过传入来禁用:disabled => true
按钮html_options
。如果您使用的是 RESTful 路由,则可以传递:method
来更改用于提交表单的 HTTP 动词。
@Ryan 的回答很好,但遗憾的是html 验证失败http://validator.w3.org/
错误:元素按钮不得作为 a 元素的后代出现。
为什么不简单地将(CSS)类应用于您的链接并使其显示为按钮。
erb:
<%= link_to "Button Text", new_post_path, class: 'button' %>
产生(有效和语义)HTML:
<a class="button" href="/post/new">Button Text</a>
然后您可以将其设置为看起来像一个按钮。
示例: http: //jsfiddle.net/nelsonic/FQK9M /7/