我正在尝试创建按钮ala Wufoo(Rediscovering the button element)
我想写下面的代码如下:
<%form_tag search_path, :method => :get, :class => 'search' do %>
<%=text_field_tag :search, params[:search] -%>
<%=button_tag 'search', :name => nil-%>
<%end%>
生成以下HTML(而不是输入[type =“submit”]标记)
<button type="submit" class="positive">
<img src="/images/icons/tick.png" alt=""/>
Save
</button>
方法是否已经存在?或者我应该自己动手帮助?
答案 0 :(得分:36)
您可以使用content_tag来实现此目的。这是做你想做的事情的更多的方式。但它比原始HTML更长。
<% content_tag :button :type => :submit, :class => :positive do %>
<%= image_tag "icons/tick.png"%>
Save
<% end %>
哪个产生
<button type="submit" class="positive">
<img src="/images/icons/tick.png" alt="Tick"/>
Save
</button>
然而,以此作为起点,您应该可以毫无问题地滚动自己的强大帮助程序,或将其抽象为部分帮助。
答案 1 :(得分:2)
您可以使用image_submit_tag帮助程序创建图像提交标记,而不是将整个内容包装在按钮中:
<%
image_submit_tag("login.png")
# => <input src="/images/login.png" type="image" />
image_submit_tag("purchase.png", :disabled => true)
# => <input disabled="disabled" src="/images/purchase.png" type="image" />
image_submit_tag("search.png", :class => 'search-button')
# => <input class="search-button" src="/images/search.png" type="image" />
%>
如果您需要“保存”文字显示在<img>
答案 2 :(得分:0)
使用JQuery Cheats Gem https://github.com/plowdawg/jquery_cheats,在您的视图中它只是
<%= submitimage("/path/to/image.png","Alternate Text") %>
注意:备用文字是可选的。