【问题标题】:Change rails button_to helper into button_tag helper将 rails button_to 助手更改为 button_tag 助手
【发布时间】:2013-08-06 09:09:29
【问题描述】:

我想在 Twitter 意图按钮上使用图标。

<%= button_to "Share on Twitter", "https://twitter.com/intent/tweet?text=#{@twitter_message}", :class => "btn" %>

有可能吗?

页面上还有 2 个使用 button_tag 助手的按钮,我可以将图标插入这些按钮。我应该将 button_to 转换为 button_tag 吗?如果可以,如何转换?

【问题讨论】:

标签: ruby-on-rails ruby


【解决方案1】:

根据button_todocumentation生成输入标签:

<%= button_to "New", action: "new" %>

<form method="post" action="/controller/new" class="button_to">
   <div><input value="New" type="submit" /></div>
</form>"

所以你应该使用 link_to 来代替按钮类,比如:

<%= link_to "Share on Twitter", "https://twitter.com/intent/tweet?text=#{@twitter_message}", :class => "btn icon-edit" %>

我已经使用 twitter bootstrap 完成了这项工作。

【讨论】:

  • 根据生成的输入标签来弥补差异。不错的提示。
【解决方案2】:

为什么不改用link_to,因为更适合您的情况。

link_to 'http://tweeter.com/bla-bla', class: 'btn' do
    # Your text and icon
end

【讨论】:

    【解决方案3】:

    这应该可行:

    <%= button_to "https://twitter.com/intent/tweet?text=#{@twitter_message}", :class => "btn" do %>
       <i class="icon-something"></i>Share on Twitter
    <% end %>
    

    【讨论】:

    • 我已经尝试过了,但我得到了 http 字符串作为按钮上的文本。部分按钮截图imgur.com/Xa36NpW
    • 您使用的是哪个版本的 Rails?
    猜你喜欢
    • 2011-07-21
    • 2012-03-18
    • 1970-01-01
    • 1970-01-01
    • 2010-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多