2012-05-09 44 views
6

Tôi muốn thêm biểu tượng vào nút trên ruby ​​trên thanh ray. Hiện nay tôi đã thử những điều sau đây:Thêm biểu tượng Bootstrap vào nút trong Ruby on Rails

<%= button_to raw("<i class=\"icon-arrow-up\"></i>"), 
{:controller => 'events', :action => "upvoteEvent", :method => "put", 
:id => @event.id, :uid => current_user.id}, 
{:class => "btn btn-success"}%> 

trong đó sản xuất html sau:

<form action="/events/upvoteEvent?id=17&amp;method=put&amp;uid=7" class="button_to" method="post"><div><input class="btn btn-success" type="submit" value="<i class="icon-arrow-up"></i>" /><input name="authenticity_token" type="hidden" value="FsVUPiYl0cK666pn8hqo6AU9/HK0CweZ/nsXqwOWZzU=" /></div></form> 

Tôi đã theo các giải pháp được đăng ở đây: https://stackoverflow.com/a/10468935/1385324, nhưng nó sẽ không làm việc cho tôi. Tôi cũng đã thử nghiệm rằng Bootstrap CSS đang hoạt động, đơn giản bằng cách chèn một biểu tượng vào bất kỳ nơi nào khác trên trang web.

Cảm ơn bạn đã trợ giúp!

+0

bạn không thể đặt biểu tượng cho trình trợ giúp 'button_to'. Nó sẽ yêu cầu bạn gọi '.html_safe' hoặc' raw() 'nhưng đó là không thể theo như tôi biết kể từ khi chuỗi bạn phải gọi nó là không thể truy cập. –

Trả lời

-5

Thanks for guys giúp đỡ của bạn, đã kết thúc với sửa đổi riêng html-đầu ra của tôi mà làm cho nó làm việc:

<form action="/events/upvoteEvent?id=<%= @event.id.to_s%>&amp;method=put&amp;uid=<%= current_user.id.to_s%>" class="button_to" method="post"> 
    <button type="submit" value="upvote" class="btn btn-success"> 
     <i class="icon-arrow-up"></i> 
    </button> 
</form> 
0

Nếu bạn nhìn ngay ở cuối số page on the Twitter Bootstrap website này, bạn sẽ thấy có một số nút có biểu tượng trên đó. Sau đó bạn có thể xem nguồn để xem cách họ đã thực hiện nó - tôi sẽ nói đó sẽ là một điểm khởi đầu tuyệt vời.

1

Nếu bạn chỉ tìm kiếm một liên kết giống như một nút, bạn có thể làm một cái gì đó như thế này:

<%= link_to 'Upvote <i class="icon-arrow-up"></i>', 'events/upvote', class: 'btn btn-success' %> 

Nếu bạn muốn sử dụng nó cho một mẫu, bạn có thể làm một cái gì đó như thế này với button_tag , submit_tag hoặc f.submit.

<%= submit_tag 'Upvote <i class="icon-arrow-up"></i>', html: { class: 'btn btn-success' } %> 
12

Bạn cũng có thể thử điều này:

<%= link_to 'Upvote <i class="icon-arrow-up"></i>'.html_safe, 'events/upvoteEvent', class: => 'btn btn-success' %> 

hoặc cho một nút gửi thực sự, điều này:

<%= button_tag(:type => 'submit', :class => 'btn btn-success') do %> 
Upvote <i class="icon-up-arrow icon-white"></i> 
<% end %> 
0

A be cách tter và sạch hơn sẽ là:

= link_to 'events/upvoteEvent', class: => 'btn btn-success' do 
    Upvote 
    <i class="icon-arrow-up"></i>'.html_safe